タイトルまんま。
MovableType(3.34)ブログをphp化して運用すると、MTIfCategoryのMTElse構文が使用できなくなるっぽいです。他のバージョンだとどうなるかな?
例
例えばカテゴリー一覧を表示する時に、「090その他」というカテゴリのみ一覧に表示させたくない場合。
<MTSubCategories>
<MTSubCatIsFirst><ul></MTSubCatIsFirst>
<MTIfCategory name="090その他">
<MTElse>
<MTIfNonZero tag="MTCategoryCount">
<li><a href="<$MTCategoryArchiveLink$>"title="<$MTCategoryDescription$>"> <MTCategoryLabelcutfirstchar="3"></a>
<MTElse>
<li><MTCategoryLabel cutfirstchar="3">
</MTElse>
</MTIfNonZero>
<MTSubCatsRecurse max_depth="3">
</li>
<MTSubCatIsLast></ul></MTSubCatIsLast>
</MTElse>
</MTIfCategory>
</MTSubCategories>
▲通常のhtmlでブログを構成する場合、MTのタグを上記の様に記述すればOK
でも、php化したMTブログの場合は、エラーこそ出ないけどカテゴリ一覧に何も表示されない。
対処法
こんな場合はMTFilterCategoriesを使ってやると上手く行く。
<MTSubCategories>
<MTSubCatIsFirst><ul></MTSubCatIsFirst>
<MTFilterCategories exclude="090その他">
<MTIfNonZero tag="MTCategoryCount">
<li><a href="<$MTCategoryArchiveLink$>"title="<$MTCategoryDescription$>"rel="nofollow"><MTCategoryLabel cutfirstchar="3"></a>
<MTElse>
<li><MTCategoryLabel cutfirstchar="3">
</MTElse>
</MTIfNonZero>
<MTSubCatsRecurse max_depth="3">
</li>
<MTSubCatIsLast></ul></MTSubCatIsLast></MTFilterCategories>
</MTSubCategories>
他にもあるphp化で動かないタグ
例えば(カテゴリーページで)カテゴリー内の記事一覧を表示する場合で、
MTEntryIfCategoryに複数のカテゴリー名を指定する場合も上手く作動しない。
<MTEntryIfCategory name="特殊なカテゴリ1"or"特殊なカテゴリ2">
~~特殊なカテゴリの表記タグ~~
<MTElse>
~~通常カテゴリの表記タグ~~
</MTElse>
</MTEntryIfCategory>
▲こんなのも作動してくれない。
これもやはりMTFilterCategoriesを使えば良いのかな?
こっちは緊急を要さないケースだったので、今回はほったらかしです(´・ω・`)