記事のカテゴリを並び順通りに出力するプラグイン

現在のMovable Typeでは、管理画面上でカテゴリを並べ替えることができます。
しかし、個々の記事のカテゴリを出力するMTEntryCategoriesタグは、並べ替えた順番ではなく、カテゴリのラベル順で出力されます。
そこで、MTEntryCategoriesタグの代わりに、記事のカテゴリを管理画面での並び順の通りに出力するプラグインを作りました。

1.インストール

プラグインは以下からダウンロードすることができます。

EntryCategoriesOrdered_1_00.zip

ダウンロードしたZipファイルを解凍すると、「plugins」というフォルダができます。
このフォルダを、Movable Typeのインストール先ディレクトリにアップロードします。

2.MTEntryCategoriesOrderedタグ

このプラグインをインストールすると、「MTEntryCategoriesOrdered」というテンプレートタグ(ブロックタグ)が追加されます。
このタグのブロックの中で、MTCategory系のテンプレートタグを使って、記事のカテゴリの情報を出力します。

<mt:EntryCategoriesOrdered>
  個々のカテゴリの情報を出力する部分
</mt:EntryCategoriesOrdered>

2-1.記事にカテゴリがない場合

記事にカテゴリがない場合もあります。
その場合の出力を分けたい場合は、以下のようにテンプレートを組みます。

<mt:EntryCategoriesOrdered>
  個々のカテゴリの情報を出力する部分
<mt:Else>
  記事にカテゴリがない場合に出力する部分
</mt:EntryCategoriesOrdered>

2-2.secondaryモディファイア

「secondary="1"」のモディファイアを指定することもできます。
この場合、記事のカテゴリのうち、副カテゴリだけを出力します。
主カテゴリの出力には、Movable Type標準のMTEntryPrimaryCategoryタグをお使いください。

2-3.glueモディファイア

個々のカテゴリとカテゴリの間に何かを出力したい場合は、他のブロックタグと同様に、glueモディファイアを使います。

2-4.ブロック内で使える変数

MTEntryCategoriesOrderedタグのブロックの中では、他のブロックタグと同様に、以下の5つの変数を使うことができます。

  • __first__
  • __last__
  • __odd__
  • __even__
  • __counter__

3.EntrySubCategoriesプラグイン

記事が属するカテゴリを、MTTopLevelCategoriesタグのように、ツリー状に出力したい場合もあります。
この場合は、EntrySubCategoriesプラグインをご利用ください。