ブログ記事ページでその記事以外のブログ記事一覧を表示する方法
小粋空間 » Movable Type » カスタマイズ » エントリー(ブログ記事) » ブログ記事ページでその記事以外のブログ記事一覧を表示する方法
ブログ記事ページでその記事以外のブログ記事一覧を表示する方法を紹介します。
1.はじめに
「MTEntriesタグをテンプレートで複数使う時に記事を重複させない方法」をエントリーしたところ、riatwさんから次のリクエストを頂きました。
記事詳細でその記事以外の記事一覧を綺麗に書く方法が知りたい。
https://t.co/oSNBIEvGeZ
— riatw (@riatw) 2015, 7月 28
ということで、ブログ記事ページでその記事以外のブログ記事一覧を表示する方法を紹介します。
ちなみにMTEntriesタグには特定の記事を除外する機能はありません。
2.ブログ記事ページでその記事以外のブログ記事一覧を表示する
やり方は色々あると思いますが、個人的には次のアイデアを思いつきました。
<$mt:EntryID setvar="entry_id"$>
<mt:Entries id="$entry_id"></mt:Entries>
<mt:Entries unique="1" lastn="10">
<$mt:EntryTitle$>
</mt:Entries>
テンプレートの解説ですが、まずMTEntryIDタグとsetvarモディファイアを組み合わせて、そのページの記事IDを変数entry_idに保存します。
<$mt:EntryID setvar="entry_id"$>
次に空のMTEntriesタグを作り、idモディファイアに先ほどの変数entry_idを指定します。
<mt:Entries id="$entry_id"></mt:Entries>
この直後にもう一度MTEntriesタグを作り、uniqueモディファイアを指定すれば、そのページの記事だけを除外することができます。
<mt:Entries unique="1" lastn="10">
<$mt:EntryTitle$>
</mt:Entries>
3.ブロックタグを省略する
空のMTEntriesブロックタグはHTMLタグの空要素のフォーマットで書けるので、次のように省略することができます。
<$mt:EntryID setvar="entry_id"$>
<mt:Entries id="$entry_id" />
<mt:Entries unique="1" lastn="10">
<$mt:EntryTitle$>
</mt:Entries>