[MovableType] MTDateタグを使用して現在の年の記事一覧を表示させてみる
この1ヶ月で親知らず4本あったうちの3本抜歯して、ほんのちょっとだけ体重が軽くなったishidaです。 上の親知らず2本は痛くも痒くもなく抜けたのですが、下の親知らずは抜歯に40分ほどかかり1週間経過してもズキンズキンと痛みます。。。
さてさて今回は、MovableTypeのTipsを。
MTDateタグってみなさん、ご存じですか?
自分はタグは知っていたのですが、どういった場合につかうべきかあまり考えたことがなく使うこともありませんでした。
ちなみにMovableTypeテンプレートリファレンスによると、
MTDateタグ
再構築した日時を表示します。更新日時を表示したいときなどに利用します。
再構築した日時を取得できるということなので、
インデックステンプレートで使えそうですね。
MTDateタグで出力されるものは?
<$mt:Date$>
上のように記述した場合、出力結果は以下となりました。
2017年6月30日 16:37
年の数字だけ表示してみる
format属性を指定して、年の数字だけを表示してみます。
<$mt:Date format="%Y"$>
2017
インデックステンプレートで最新年のブログ記事一覧を表示するカスタマイズ
お知らせページなどでは、件数ごとでページャーをつけることが多くありますが、今回は現在の年(2017年)の記事一覧を表示させてみたいと思います。
記事リストモジュールで、記事の一覧は表示できているという想定です。
MTタグの記述(インデックステンプレート)
<$mt:Date format="%Y" setvar="current"$>
<mt:ArchiveList archive_type="Yearly">
<mt:ArchiveDate format="%Y" setvar="temp">
<mt:If name="current" eq="$temp">
<mt:Include module="記事リスト">
</mt:If>
</mt:ArchiveList>
MTタグ解説
1)MTDateタグで再構築された日の年部分(現在)を取得し、
setvar にて current という変数に格納。
2)さらに各記事の投稿日時をtempという変数に格納。
3)tempとcurrentを比較し現在の年とマッチしたものだけ記事を表示。
意外とコード量も少なく書けちゃいますね。
まとめ
MTDateタグは、再構築した日時を取得できるMTタグです。
今回の例では、最新年の記事一覧を表示するカスタマイズをしてみました。
MTDateタグ、こんな風にも使うと便利だよ〜とかあったら教えてください。
それではまた!