MTのブログ記事リストに、
サブカテゴリのリストを表示するページがあり、
自動的に出るように、MTのタグを使ってみました。
階層が以下のような時に、
・TOP
・カテゴリ1
・aaaaa
・bbbbb
・ccccc
・ddddd
カテゴリ1にサブカテゴリを表示する場合は、
●サブカテゴリ一覧を表示
<MTSubCategories> <li><a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a></li> </MTSubCategories>
こちらで出来ます(当然ですね)
さらにaaaaaを開いている時にも、aaaaa、bbbbb、ccccc、などのカテゴリを表示したい場合は、
・サブカテゴリのページで同じ階層のサブカテゴリを表示する
<MTHasParentCategory> <MTTopLevelCategories> <MTSubCategories> <li><a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a></li> </MTSubCategories> </MTTopLevelCategories> </MTHasParentCategory>
こう書くと上手いこと表示されました。
MTだと順番が思うようにできないから残念ですね。
(MT5.1からはある程度融通がきくそうですが・・・)
でこれはブログ記事リストに書いたので、
ひとつのテンプレに書いてます。
実際書いたのは、
以下のようなソースになります。
<!-- サブカテゴリがある場合に実行する -->
<MTIf tag="SubCategories">
<ul class="subCategory">
<MTSubCategories sort_order="descend" sort_by="basename">
<li><a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a></li>
</MTSubCategories>
</ul>
</MTIf>
<!-- 親カテゴリがある場合実行する -->
<MTHasParentCategory>
<ul class="subCategory">
<MTTopLevelCategories>
<MTSubCategories sort_order="descend">
<li><a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a></li>
</MTSubCategories>
</MTTopLevelCategories>
</ul>
</MTHasParentCategory>
こんなかんじで書いたので、サブカテゴリがないカテゴリには影響しませんし、親カテゴリがないカテゴリにも影響ありません。