【MovableType】テンプレートの優先順位

MovableTypeにはテンプレートの種類がいくつかあります。

・グローバルテンプレート

・ウェブサイトテンプレート

・ブログテンプレート

この中でウェブサイトテンプレートとブログテンプレートはわかりやすい場所にありますが、グローバルテンプレートは「システム」の中に入っています。

MovableTypeでは実際のテンプレートパスは違っていても、同じ名前のモジュールをグローバル・ウェブサイト・ブログとそれぞれに登録することができます。

template/global/header.tpl.html
template/website/header.tpl.html
template/blog/header.tpl.html

こんな感じですね。その際にテンプレート名を全て「header」と登録します。
そして、ブログのメインテンプレートで <$mt:Include module="header"$> と指定します。
すると、優先順位の関係でグローバルテンプレートとして登録されている template/global/header.tpl.html の内容が表示されます。

MovableTypeは「 システム > ウェブサイト > ブログ 」の順となっています。 上書きはできないので、その場合は読み込みたいテンプレートが所属しているブログIDを付与すれば引っ張ることができます。

<$mt:Include module="header" blog_id="1"$>

ちなみに、システムのブログIDは「0」です。