記事詳細ページで前後の記事を出力する方法をメモ。
サンプルコード
現在の記事の前の記事はMtEntryPrevious、次の記事はMtEntryNextを使用します。
<ul class="page-navigation-list"> <mt:EntryPrevious> <li class="prev"> <a href="<mt:EntryPermalink>"><mt:EntryTitle></a> </li> </mt:EntryPrevious> <mt:EntryNext> <li class="next"> <a href="<mt:EntryPermalink>"><mt:EntryTitle></a> </li> </mt:EntryNext> </ul>
前の記事や次の記事がない場合、ブロックタグ内は出力されません。
全記事から前後の記事ではなく、カテゴリ別や作者別で前後の記事を表示することもできます。
カテゴリ別の場合はby_category、作者別の場合はby_authorに1を設定します。
<ul class="page-navigation-list"> <mt:EntryPrevious by_category="1"> <li class="prev"> <a href="<mt:EntryPermalink>"><mt:EntryTitle></a> </li> </mt:EntryPrevious> <mt:EntryNext by_category="1"> <li class="next"> <a href="<mt:EntryPermalink>"><mt:EntryTitle></a> </li> </mt:EntryNext> </ul>
これで現在の記事に設定しているカテゴリ(メインカテゴリ)に属する前後の記事を表示することができます。
注意点として、記事公開時に自動で行われる再構築だと、公開した記事とその1つ前の記事のみが対象になります。
前の記事が2つ以上前の記事の場合は反映されませんので、記事アーカイブの再構築が必要になります。
【参考サイト】
- MTEntryPrevious – テンプレートタグリファレンス | CMSプラットフォーム Movable Type ドキュメントサイト
- MTEntryNext – テンプレートタグリファレンス | CMSプラットフォーム Movable Type ドキュメントサイト
コメントが承認されるまで時間がかかります。