MTで初めてサブカテゴリーをつくってみたのですが、テンプレートに反映させる際にどのテンプレートタグを使えばいいのかわかりづらかったのでメモ。
サブカテゴリー自身には親カテゴリーの情報は含まれない
サブカテゴリーのラベルには親カテゴリーのラベルは含まれません。たとえば「iPhone」というカテゴリーの下に「アプリケーション」というサブカテゴリーを作成しても、サブカテゴリーのラベル(<$MTCategoryLabel$>で表示されるもの)は「アプリケーション」となります。
そのため、サブカテゴリーのアーカイブページのタイトルや、パンくずリストで利用するには少し工夫が必要となります。
サブカテゴリーがある場合にサブカテゴリーの一覧を表示する
MTHasSubCategoriesでサブカテゴリーの存在判定をして、MTSubCategoriesブロックの中でサブカテゴリーを出力します。
<MTHasSubCategories> <MTSubCategories> <a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel encode_html="1"$></a> </MTSubCategories> </MTHasSubCategories>
親カテゴリーのアーカイブページにおいて、そのカテゴリーに属するサブカテゴリーの一覧を表示したい場合などに利用できます。
MTSubCategoriesにはいくつかオプションがあります。
親カテゴリーがある場合に親カテゴリーを表示
MTHasParentCategoryで親カテゴリーの存在判定をして、MTParentCategoryブロックの中で親カテゴリーを出力します。
<MTHasParentCategory> <MTParentCategory> <a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel encode_html="1"$></a> </MTParentCategory> </MTHasParentCategory>
サブカテゴリーのアーカイブページにおいて、その親カテゴリーを表示したい場合などに利用できます。
例えばサブカテゴリーのアーカイブページのtitleに親カテゴリーのラベルも表示させたい場合は、次のようにできます。
<title><MTHasParentCategory> <MTParentCategory><$MTCategoryLabel encode_html="1"$> - </MTParentCategory> </MTHasParentCategory> <$MTArchiveTitle encode_html="1"$></title>
MTSubCategories や MTParentCategory のブロックの中で MTCategoryArchiveLink や MTCategoryLabel がサブカテゴリーや親カテゴリーのリンクやラベルを出力できる、というのを知らないとちょっと苦労するかと思います。
[2010-01-12] RSS フィードの URL が変わりました。お手数ですが RSS リーダーへの再登録をお願いします。
前のエントリー: « 松木里菜カテゴリーにサブカテゴリーを新設しました
次のエントリー: Google Readerが推薦する「アルファブロガーズ」 »
トラックバック
このエントリーのトラックバックURL:
タイトル:
URL:
リンク用HTMLタグ:




