Movable Type 4.23 にて「カテゴリー別のすべてのブログ記事一覧テンプレート」を作ろうとしていたのですが、なかなか実現できませんでした。ひとえに、私の知識の無さが原因です。カテゴリーの一覧は、デフォルト・テンプレートの「アーカイブインデックス」の中にあるので、これを利用すれば何とかなると思っていました。残る問題は、それぞれのカテゴリーの全ての記事をその下に並べるコードをどうするかでした。そこで、またお世話になったのが、この本です。
参考にさせてもらった本は、
『Movable Type 4.2パーフェクトガイド』
著者 荒木勇次郎/著
出版社名 毎日コミュニケーションズ (ISBN:978-4-8399-2779-0)
発行年月 2008年08月
サイズ 775P 24cm
価格 3,990円(税込)
この本の、第6.16章「カテゴリ一覧にブログ記事タイトルを表示する」が参考になりました。
<mt:entries> <mt:entriesHeader> <ul class="widget-list tree"> </mt:entriesHeader> <li class="tree-list<mt:entriesFooter> tree-list-end</mt:entriesFooter>"><a href="<mt:entryPermalink valid_html="1" />" title="<mt:entryTitle encode_html="1" />"><mt:entryTitle encode_html="1" /></a></li> <mt:entriesFooter> </ul> </mt:entriesFooter> </mt:entries>
↑これを、
省略 <mt:Else> <li><$mt:CategoryLabel$>
これの直前(<mt:Else> の直前)に挿入すればできあがりです。あとは、新しく「インデックステンプレート」を作成しさえすればできあがりです。テンプレート名は「カテゴリ別アーカイブインデックス」にして、出力ファイル名は「catsarchives.php」にしています。テンプレートの種類は「アーカイブインデックス」にします。出来上がったものは、こちらカテゴリー別の全てのブログ記事一覧です。これを、トップページのどこかにリンクします。スタイルシートの方には、
ul.tree { margin-left: 0; padding-left: 5px; list-style: none; } li.tree-list { margin: 0; padding-left: 13px; list-style: none; }
を付け加えておけばいいでしょう。
これは、WordPress で言えば、Sitemap Generator Plugin for WordPress の機能で実現できるページのようなものです。
【追記 2009/09/16】 ブログのタイトルの横に投稿日付を付けてみました。
<mt:entries>
<mt:entriesHeader>
<ul class="widget-list tree">
</mt:entriesHeader>
<li class="tree-list<mt:entriesFooter> tree-list-end</mt:entriesFooter>">
<table width="100%" cellspacing="0" cellpadding="0">
<tr>
<td valign="top" align="left">
<abbr class="published" title="<$mt:EntryDate format_name="iso8601"$>"><$mt:EntryDate format="%Y.%m.%d"$></abbr>:
</td>
<td width="84%">
<a href="<mt:entryPermalink valid_html="1" />" title="<mt:entryTitle encode_html="1" />"><mt:entryTitle encode_html="1" /></a>
</td>
</tr>
</table>
</li>
<mt:entriesFooter>
</ul>
</mt:entriesFooter>
</mt:entries>
【追記 2010/05/15】
少し改良しました。改良する前は、カテゴリーごとにブログ記事をただ並べていましたが、目的のカテゴリーにジャンプする手段がありませんでした。ブラウザをひたすらスクロールさせて目的のカテゴリーに行くわけですが、ブログ記事が多くなっているので非常にめんどうです。そこで、最初に目的のカテゴリーにジャンプするようにしました。
<a href=”#<$mt:CategoryLabel$>” title=”<$mt:CategoryDescription$>”><$mt:CategoryLabel$> (<$mt:CategoryCount$>)</a>
と
<a name=”<$mt:CategoryLabel$>“></a><a href=”<$mt:CategoryArchiveLink$>” title=”<$mt:CategoryDescription$>”><$mt:CategoryLabel$> (<$mt:CategoryCount$>)</a>
を組み合わせました。これで実用的になりました。
【追記 2010/08/26】
サブカテゴリーがある場合は、
親カテゴリーとサブカテゴリ-を区別してエントリー表示 が参考になるかも。
トラックバックURL:
https://serene.sakura.ne.jp/blog/2009/02/24/2054/275.php/trackback