2012年3月18日

Movable Typeのカテゴリ一覧をソートできる「SortCategoriesプラグイン」

March 18,2012 2:55 AM
Tag:[, , ]
Permalink

Movable Typeのカテゴリ一覧を任意の条件でソートできる「SortCategoriesプラグイン」を公開します。下のスクリーンショットはカテゴリの作成日で最新5件を降順ソートしたサンプルです。

SortCategoriesプラグイン

1.基本

Movable Typeで階層化しないカテゴリ一覧を出力するタグとしてMTCategoriesタグが用意されています。公式サイトのドキュメントには記載がありませんが、lastnモディファイアやsort_orderモディファイアを利用することもできます。ただしタイトル以外の条件でソートすることができません。

ちなみに、MT5.1ではMTSubCategoriesタグ、MTTopLevelCategoriesタグについてsort_orderモディファイアが提供されており、任意の条件でソートすることが可能になりましたが、これらのタグは階層化表示が目的なのでlastnモディファイアを利用することはできません。

2.プラグインの機能

SortCategoriesプラグインでは、MTCategoriesタグにsort_byモディファイアを利用できる機能を追加したMTSortCategoriesブロックタグを提供します。

MTSortCategoriesブロックタグにsort_byモディファイアを与えれば、以下の条件でソートすることが可能です。sort_byモディファイアを設定していない場合はカテゴリ名でソートします。

  • basename(出力ファイル名)
  • created_on(作成日)
  • label(カテゴリ名)
  • modified_on(変更日時)
  • description(説明)

これにより、例えば新規作成したカテゴリを10件表示するといったことも可能になります。

また、カテゴリの作成日時と更新日時を出力するMTCategoryDateタグとMTCategoryModifiedDateタグも併せて提供します。この2つのファンクションタグはformatモディファイアの利用が可能です。

各テンプレートタグの具体的な利用方法は4項を参照してください。

本プラグインはMT5.0/MT5.1で動作確認しています。

3.プラグインのダウンロード・インストール

下記のリンクをクリックして、プラグインアーカイブをダウンロードします。

SortCategories_0_01.zip

プラグインアーカイブを展開し、中にあるSortCategoriesフォルダごと、Movable Type のアプリケーションディレクトリのpluginsディレクトリにアップロードします。

システム管理画面のプラグイン設定画面で、「SortCategories~」が表示されればインストール完了です。

プラグイン設定画面

プラグイン名は既出の他プラグインと重複しているので別途変更するかもしれません。

4.テンプレートのサンプル

最新10件のカテゴリを降順に表示するには、次のように記述します。

<mt:SortCategories sort_by="created_on" sort_order="descend" lastn="10">
  <$mt:CategoryLabel$>
</mt:SortCategories>

ブログ記事を含まないカテゴリを表示する場合は「show_empty="1"」を追加します。

<mt:SortCategories show_empty="1" sort_by="created_on" sort_order="descend" lastn="10">
  <$mt:CategoryLabel$>
</mt:SortCategories>

冒頭のスクリーンショットのように、最新5件のカテゴリ名と作成日時をリスト形式で表示するには次のようにします。

<mt:SortCategories show_empty="1" sort_by="created_on" sort_order="descend" lastn="5">
  <mt:if name="__first__">
<ul>
  </mt:if>
  <li><mt:CategoryLabel> <$mt:CategoryCreatedDate format="%Y年%B月%e日"$>作成</li>
  <mt:if name="__last__">
</ul>
  </mt:if>
</mt:SortCategories>

カテゴリ名を、カテゴリの説明で昇順にソートするには次のようにします。

<mt:SortCategories sort_by="description" sort_order="ascend">
  <$mt:CategoryLabel$>
</mt:SortCategories>

5.注意事項

MT5.1以上のカテゴリ一覧画面で、一括作成したカテゴリの作成日時は全く同じになるため、created_onでソートしても期待する結果になりません。

Comments [4] | Trackbacks [0]
Now loading...
ギターに入った猫
掲載広告募集
Styles
Font Size
Default
For defective color vision
Gray Scale
RGB Color
Search this site

このブログをメールで購読する by:FeedBurner

AMN
Categories
Monthly Archives
2019年
2018年
2017年
2016年
2015年
2014年
2013年
2012年
2011年
2010年
2009年
2008年
2007年
2006年
2005年
2004年
2003年
BlogPeople
Syndicate this site
FeedBurner(RSS1.0/RSS2.0/Atom)
Counter
これまでのアクセス
Powered by
Movable Type 6.0.3