1. トップページ
  2. MovableType.net で 記事のカテゴリをすべて出力し、特定の親を持たない場合は非表示にする

MovableType.net で 記事のカテゴリをすべて出力し、特定の親を持たない場合は非表示にする

シックス・アパート社が開発された MovableType.net に関係する記事も扱っていきます。

やりたいこと

親子関係を持つカテゴリを作成し、画像のように設定したとします。


ここから、親が「担当者」である「担当者A」と「担当者C」のみテキストとして出力してみたいと思います。

解説

<mt:EntryCategories>のみでは実現できない

記事のカテゴリをすべて出力するMTタグは<mt:EntryCategories>ですが、
モデファイアなどである程度制御は可能なものの、
親を絡めた処理はできません。
記事のカテゴリを表示する | MovableType.net 逆引き辞典

そのため、複数のMTタグを組み合わせて実現します。

実際のコード

<mt:EntryCategories>
<mt:HasParentCategory>
	<mt:ParentCategory>
		<$mt:CategoryLabel encode_html="1" setvar="parentCategoryName"$>
    </mt:ParentCategory>
    <mt:if name="parentCategoryName" eq="担当者">
        <mt:IfCategory>
        	<p><$mt:CategoryLabel encode_html="1"$></p>
        </mt:IfCategory>
     </mt:if>
</mt:HasParentCategory>
</mt:EntryCategories>


parentCategoryName変数に親カテゴリ名を格納しておき、
mt:ifeqモデファイアで条件分岐を行います。

以下のようなHTMLが出力されれば成功です。

<p>担当者A</p>
<p>担当者C</p>


参考にさせていただいたページ

参考サイトなし