MTで現在のカテゴリの所属するカテゴリの一覧のみを表示する方法

公開日: 2010.11.1 | 最終更新日: 2011.3.18
このエントリーをはてなブックマークに追加
一から作ろうと思うと頭がこんがらがってくるので、コピペ用として記述しておきます。

MTのカテゴリ一覧は通常すべのカテゴリが表示されますが、下のようなカテゴリの構造になっている時、カテゴリAの時はカテゴリAの一覧のみ表示、またカテゴリAの子カテゴリの時もカテゴリAの一覧のみ表示する方法の説明です。

  • カテゴリA
    • 子カテゴリ
    • 子カテゴリ
    • 子カテゴリ
  • カテゴリB
    • 子カテゴリ
    • 子カテゴリ
    • 子カテゴリ

図にするとこんな感じでしょうか。

説明

テンプレートのブログ記事リストに直接書くか、モジュールを新しく作って、以下のコードを記入してください。

<mt:ParentCategory><mt:SortedSubCategories include_current="1"><mt:SubCatIsFirst><ul></mt:SubCatIsFirst><mt:IfNonZero tag="mt:CategoryCount">
<li><a href="<$mt:CategoryArchiveLink$>"><span id="snav-<mt:CategoryID>" class="<mt:HasParentCategory>child</mt:HasParentCategory><mt:HasNoParentCategory>parent</mt:HasNoParentCategory>"><mt:CategoryLabel></span></a><mt:Else><li><span id="snav-<mt:CategoryID>" class="<mt:HasParentCategory>child</mt:HasParentCategory><mt:HasNoParentCategory>parent</mt:HasNoParentCategory>"><mt:CategoryLabel></span></mt:Else></mt:IfNonZero><mt:SubCatsRecurse></li>
<mt:SubCatIsLast></ul></mt:SubCatIsLast></mt:SortedSubCategories></mt:ParentCategory>

<mt:HasNoParentCategory><mt:SortedSubCategories include_current="1"><mt:SubCatIsFirst><ul></mt:SubCatIsFirst><mt:IfNonZero tag="mt:CategoryCount">
<li><a href="<$mt:CategoryArchiveLink$>"><span id="snav-<mt:CategoryID>" class="<mt:HasParentCategory>child</mt:HasParentCategory><mt:HasNoParentCategory>parent</mt:HasNoParentCategory>"><mt:CategoryLabel></span></a><mt:Else><li><span id="snav-<mt:CategoryID>" class="<mt:HasParentCategory>child</mt:HasParentCategory><mt:HasNoParentCategory>parent</mt:HasNoParentCategory>"><mt:CategoryLabel></span></mt:Else></mt:IfNonZero><mt:SubCatsRecurse></li>
<mt:SubCatIsLast></ul></mt:SubCatIsLast></mt:SortedSubCategories></mt:HasNoParentCategory>

出力すると以下のようになります。(カテゴリA又はカテゴリAの子カテゴリの場合)

<ul>
<li><a href="#"><span id="snav-1" class="parent">カテゴリA</span></a><ul>
<li><a href="#"><span id="snav-2" class="child">子カテゴリ</span></a></li>
<li><a href="#"><span id="snav-3" class="child">子カテゴリ</span></a></li>
<li><a href="#"><span id="snav-4" class="child">子カテゴリ</span></a></li>
</ul></li>
</ul>

カテゴリごとにクラスを指定しやすいようにid、classを指定してあります。


このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加

関連記事

« »

Trackback URL

Comments : 2

koji2011.03.18 00:18

初めまして。
上記ソース、非常に便利で利用させて頂きたいと持っているんですが
エントリーがあるとカテゴリーや、親カテゴリーに行くと消えてしまう現象が起きます。
色々いじってみたいんですが、結局わからずでもしご存知でしたら
ご教授頂けないでしょうか。
突然にすいませんが、よろしくお願いします。

Hi-Lo2011.03.18 00:46

すいませんでした。
現在自分の使っているコードではなく、少し古い情報を載せていました。
最新のものに変更しましたので、現在のコードで試してみて下さい。

Comment Form

PAGE TOP