<< instaMTをUSBメモリーに入れてみた | メイン | Firefox3を入れてみた。 >>
2008年4月30日
MovableType4以降でMTCategoryDepthを再現する。
MTいじり始めた時から、カテゴリー周りのMTタグはどうも苦手。
「Category」なのか「Categories」なのか迷う時あるし。
あと、「Sub」付くやつ紛らわしい。サブカテゴリー関連のタグかなぁと
思いきや、普通にカテゴリー関連タグだったりする「MTSubCatIsFirst」と
「MTSubCatIsLast」ね。ホント最近になってやっと理解したよ。
んで、カテゴリー周りのタグを勉強がてらいじってたら、MT4以降には
MTCategoryDepthがないらしい。
カテゴリーの階層調べられて便利だと思うんだけどなー。
まぁ他のタグで代用できるから削除されたんだと思うけどさ。。。
消す事はないんでないかな?
という事で、どうやったら既存のタグでCategoryDepthを再現出来るのか、
いろいろ試してみて、やっとうまくいった。
やり方忘れるとマズイから、書いとく事にしよっと。
<MTSetVar name="catDepth" value="0"> <MTTopLevelCategories> <MTSubCatIsFirst> <ul> <MTSetVar name="catDepth" op="++"> </MTSubCatIsFirst> <li><a href="<$MTArchiveLink$>"><$MTCategoryLabel$></a></li> <MTGetVar name="catDepth"> <MTSubCatsRecurse> <MTSubCatIsLast> </ul> <MTSetVar name="catDepth" op="--"> </MTSubCatIsLast> </MTTopLevelCategories>
MTSetVarでDepthカウント用の変数宣言して、
MTSubCatIsFirstの中でインクリメント。
MTSubCatIsLastの中でデクリメント。
ってのでいいみたい。
※サンプルはカウント用にMTGetVarで表示させてます。
投稿者 shiro : 23:39 | カテゴリー:MovableType | コメント (0) | トラックバック (0)
トラックバック
このエントリーのトラックバックURL:
http://shiro.s57.xrea.com/cgi/mt/mt-tb.cgi/197