MT:スマートに(...)を演出

top2012_1101.jpg覚えておくと便利なグローバル・モディファイアを書き留めておこうと思います。


グローバル・モディファイアリファレンス

※今回はMT5.1以降を想定しています。

■こんな時に役立ちます

タイトル、本文で特定の文字数以降は...などを指定する方法です。



・trim_to (タグリファレンス)

このグローバル・モディファイアを使用すると指定した数分だけ文字(ソース)を取り出せます。
そしてMT5.1以降では「N+...」という指定ができます。つまり何文字以降になったらテキストを切って...とする。という指定がこれだけで設定できます。

<$mt:EntryTitle trim_to="5+..."$>

例えば「サンプルの文章です」という文章だと「サンプルの...」と表示されます。
※「N+...」という指定が出来るのはMT5.1以降です。



・strip_tagsタグリファレンス

このグローバル・モディファイアを使用すると、出力する内容からhtmlタグを取り除きます。
使いどころはいろいろあると思うのですが、今回は上記のtrim_toと組み合わせたいと思います。

<mt:entrybody trim_to="80+..." strip_tags="1"$>

trim_toはソースレベルでカウントしています。その為、途中で<img>タグなどが入ると、タグの途中できれてしまうことがあります。

<img href="img/sample.jp...

これを防ぐため、strip_tags="1"を指定すると出力される内容から<img>タグが除外されテキストだけの状態になります。


■まとめ
MT5.1以降だとスマートに文字数指定の演出が可能。
strip_tagの使い所が分かった。


■2015/08/11更新

descriptionなどに使用するとき改行がきになったのでstrip_linefeedsというタグを追加しました。

改行コードを取り除いてくれる。というモディファイアです。

・strip_linefeedsタグリファレンス

<$MTEntryBody strip_linefeeds="1" trim_to="60+..." strip_tags="1"$>

MTは調べれば便利なタグが沢山さるので、嬉しいですね!