Movable Type 指定エントリーへのURL自動生成とエントリー内でMTタグを使用する方法
Movable Type のタグには、指定したエントリーの URL を自動的に出力できる MTLink タグが存在します。以下の属性を持ち、テンプレートや指定したエントリーの URL を取得できます。
- template: テンプレート出力ファイルの URL を取得
- entry_id: 記事 ID に対する URL を取得
以下、それぞれアンカータグ(aタグ)内で使用する場合を例として挙げます。
MTLink タグの使用例
指定したテンプレートへのリンク
<a href="<$mt:Link template="テンプレート名"$>">リンク文字列</a>
「テンプレート名」にはテンプレート編集画面で設定した名前を設定します。
特定のエントリーへのリンク
<a href="<$mt:Link entry_id="エントリーID"$>">リンク文字列</a>
「エントリーID」にはURLを生成したいエントリーのIDを設定します。
どのような場合に MTLink タグを使うと便利か
例えばエントリー内で過去の記事にリンクを貼る場合、MTLink タグを使うことによりエントリーの URL を変更しても、再構築することで自動的に URL が変更されます。ドメインの変更や、拡張子が html から php に変わる場合、エントリーファイルの命名方法の変更など、あらゆるパターンに対応できます。
参照先エントリーのアドレスが変わってしまっても、エントリー内容をを書き換えることなく、再構築のみで対応できるメリットがあります。
しかし MovableType 初期設定のままでは、エントリー内で MT タグを使用することができません。そこで登場するのが、mteval 属性です。
エントリー内でMTタグを使えるようにする方法
MovableType には、エントリー内で MT タグが利用できるようになるグローバルモディファイアが用意されています。設定方法は簡単で、MTEntryBody タグと MTEntryMore タグに mteval を追加するだけです。
<!-- エントリー内でMTタグを使用 -- > <$mt:EntryBody mteval="1"$> <!-- エントリーの続きフィールド内でMTタグを使用 -- > <$mt:EntryMore mteval="1"$>
これで MT タグが使えるようになります。