我是第一次与MT合作,在显示每月档案列表时遇到了一些小问题。我想显示一个表格,其中每年包含条目的是一行,所有月份都显示为每行中的单元格。包含条目的月份显示,其名称包装在对应的每月存档的链接中。
我要寻找的HTML应该是这样的:
<table>
<tr>
<th>2009</th>
<td><a href="link_to_jan_2009_archive">J</a></td>
<td>F</td>
<td>M</td>
<td><a href="link_to_apr_2009_archive">A</a></td>
<td>M</td>
<td>J</td>
<td>J</td>
<td><a href="link_to_aug_2009_archive">A</a></td>
<td>S</td>
<td>O</td>
<td>N</td>
<td>D</td>
</tr>
<tr>
<th>2008</th>
...
</tr>
</table>
现在我得到的是:
<table>
<tr>
<th>2009</th>
<td><a href="link_to_jan_2009_archive">J</a></td>
<td><a href="link_to_apr_2009_archive">A</a></td>
<td><a href="link_to_aug_2009_archive">A</a></td>
</tr>
<tr>
<th>2008</th>
...
</tr>
</table>
下面是所讨论的MT代码:
<mt:ArchiveList type="Yearly" sort_order="descend">
<mt:ArchiveListHeader><table></mt:ArchiveListHeader>
<tr>
<th><$mt:ArchiveDate format="%Y"$></th>
<mt:ArchiveList type="Monthly" sort_order="ascend">
<td><$mt:ArchiveDate format="%b"$></td>
</mt:ArchiveList>
</tr>
<mt:ArchiveListFooter>
</table>
</mt:ArchiveListFooter>
</mt:ArchiveList>
到目前为止,我的代码只生成包含每年条目的月份。有人能帮我把这几个月加起来吗?
提前谢谢你,
罗斯
发布于 2009-10-21 01:08:05
您想要的存档非常类似于我在活动式冒险上所写的存档。
下面是修改后的用例版本。您将不得不做一些删除,以使月名缩短为您想要的单一字母。
将此代码放入索引模板并发布:
<mt:SetHashVar name="month_map">
<$mt:Var name="1" value="Jan"$>
<$mt:Var name="2" value="Feb"$>
<$mt:Var name="3" value="Mar"$>
<$mt:Var name="4" value="Apr"$>
<$mt:Var name="5" value="May"$>
<$mt:Var name="6" value="Jun"$>
<$mt:Var name="7" value="Jul"$>
<$mt:Var name="8" value="Aug"$>
<$mt:Var name="9" value="Sep"$>
<$mt:Var name="10" value="Oct"$>
<$mt:Var name="11" value="Nov"$>
<$mt:Var name="12" value="Dec"$>
</mt:SetHashVar>
<table>
<mt:ArchiveList type="Yearly" sort_order="ascend">
<mt:ArchiveListHeader><tr><$mt:ArchiveDate format="%Y" setvar="startYear"$></mt:ArchiveListHeader>
<$mt:ArchiveDate format="%Y" setvar="archiveYear"$>
<$mt:SetVar name="is_posts_year_{$archiveYear}" value="1"$>
<mt:ArchiveList type="Monthly">
<$mt:ArchiveDate format="%m%Y" setvar="monthYear"$>
<mt:SetVarBlock name="links_{$monthYear}"><a href="<$mt:ArchiveLink$>"><$mt:ArchiveDate format="%b"$></a></mt:SetVarBlock>
</mt:ArchiveList>
<mt:ArchiveListFooter></tr><$mt:ArchiveDate format="%Y" setvar="endYear"$></mt:ArchiveListFooter>
</mt:ArchiveList>
<mt:For var="year" from="$startYear" to="$endYear">
<mt:If name="is_posts_year_{$year}">
<tr>
<th><$mt:Var name="year"$></th>
<mt:For var="month" from="1" to="12">
<mt:SetVarBlock name="monthYear"><$mt:Var name="month" sprintf="%02d"$><$mt:Var name="year"$></mt:SetVarBlock>
<td>
<$mt:Var name="links_{$monthYear}" setvar="month_link"$>
<mt:If name="month_link">
<$mt:Var name="month_link"$>
<mt:Else>
<$mt:Var name="month_map{$month}"$>
</mt:If>
</td>
</mt:For>
</tr>
</mt:If>
</mt:For>
</table>
https://stackoverflow.com/questions/1378750
复制相似问题