アーカイブタイトルの表記を変更

MT — Tags: , — chimanaco @ 4:08 PM このエントリをはてなブックマークに追加

MTのアーカイブタイトルはデフォのままだと「2009年11月」といった表記になります。日付の表記を英語にしてみても「November 2009」とかになるだけであまりいいことありません。これを「2009.11」とかに変更したい時のメモ。


こちらの記事を参考にさせていただきました。
metaphase coder team labs – アーカイブタイトルの表記を変える

上記のサイトで紹介されていたのはregex_replaceグローバル・モディファイアです。

/pattern_foo/ と replacement_foo を設定することで、Movable Type タグの値の正規表現による置換が行えます。

というわけで、こんな感じに使います。

<mt:entrybody regex_replace="/fool/","genius">

バカが天才で置換されます。便利ですねー。
今回の場合、アーカイブタイトル「2009年11月」を「2009.11」というように変更したいときは下記のように記述します。

// 年 → &#24180; 月 → &#26376;
<$MTArchiveTitle regex_replace="/(\d+)&#24180;(\d+)&#26376;/","$1.$2"$>

「\d」は数値文字。
「+」は1文字以上の繰り返し。
「()」で括ってマッチした文字列を$1、$2で参照する。

これでめでたく

2009.11

と「.」で区切った表記ができます。
上記のサイトにもあるようにポイントは年、月等の文字はエンコードされている文字を使用しなければマッチしないということ。正規表現もっと勉強しなくては。

0 Comments »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a comment

Comments links could be nofollow free.

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.
(c) 2010 chimanaco blog | powered by WordPress with Barecity