top

投稿のあった月の総数を求める (4.1~)

「親カテゴリにサブカテゴリ以下の記事数を合計して表示」と同じパターンで「投稿のあった月の総数」も求めることができるのに気が付いたのでメモ。MTには記事数をカウントできるタグはいろいろ用意されてますが、こういうのって無いんですよね。

●MT4.1~

<MTSetvar name="monthlycount" value="0">
<MTArchiveList archive_type="Monthly">
<MTSetVar name="monthlycount" op="++">
<MTArchiveListFooter><MTGetvar name="monthlycount"></MTArchiveListFooter>
</MTArchiveList>

●MT4.2~(ダイナミック時)
*静的生成なら4.0から使えます。

<MTArchiveList archive_type="Monthly">
<MTArchiveListFooter><$MTVar name="__counter__"$></MTArchiveListFooter>
</MTArchiveList>

MonthlyをDaily、Weekly、Yearlyに変えることによって、それぞれ「投稿のあった日の総数」「投稿のあった週の総数」「投稿のあった年の総数」も求めることができます。なお、このタグ組みはダイナミックでも無駄な空白が大量に生じる傾向があるので、実際に使う時は一行で全部続けて書くことを推奨。

☆MT4.0x以前のバージョンで同じことをしたい場合は、あんちもん2.LabさんのAutoIncrementalVar プラグインが使えます。ダイナミックにも対応してますのでおすすめです。

<2008.7.9>
MT4.2からはダイナミックでも__counter__が使えるようになったので、その方法も追記。