本文へジャンプ

Movable Type構築でつまづくポイント!? "コンテキスト"について。

Movable Typeでテンプレートタグをガシガシ書いて、さぁテストだ!
と、再構築を走らせるとエラーメッセージが...。

「MTEntryTitleをコンテキスト外で利用しようとしています。」

この「コンテキスト」というのは、直訳すると「文脈」。
ここでは「状況」的な意味でしょうか。

どこでも使えるMTタグもあれば、 状況によって使用できる場所が決まっているものもあります。

例えば、
記事タイトルを表示するファンクションタグ <$mt:EntryTitle$> は、
<mt:Entries> ブロックタグ内部 か 記事アーカイブテンプレートでしか使用できません。

それ以外の場所で使用すると、再構築の際に冒頭のエラーメッセージが表示されます。

ということで、テンプレートごとに使えるタグを整理してみました。

テンプレート別まとめ

テンプレート 単体で使用できるタグ
全体 mt:Website~、mt:Blog~、 mt:SetVarなど mt:TemplateNoteなど mt:Dateなど
インデックス ※全体的と共通
記事 mt:Entry~
ページ mt:Page~
アーカイブ:時系列 mt:Archive~
アーカイブ:カテゴリ mt:Archive~、mt:Category~
アーカイブ:ユーザー mt:Archive~、mt:Author~

テンプレート共通

mt:Website系mt:Blog系のファンクションタグ

  • 単体で使用できます。(ただし、ウェブサイト直下では mt:Blog系は使えません。)
  • 自分の所属するウェブサイト/ブログ以外の値を引っ張ってきたい場合は、ブロックタグで囲む必要があります。

変数系ファンクションタグ

mt:SetVarmt:Var などはどこでも単体で使用できます。

コメントアウト系

mt:TemplateNote など

グローバル系

mt:Date やらMT全体のタグ

インデックステンプレートの場合

基本的にブロックタグの内部でしかファンクションタグは使用できません。

記事アーカイブテンプレートの場合

mt:Entry系 のファンクションタグを単体で使用できます。
それ以外のタグは、ブロックタグで囲う必要があります。

ページアーカイブテンプレート の場合

mt:Page系 のファンクションタグを単体で使用できます。
それ以外のタグは、ブロックタグで囲う必要があります。

アーカイブテンプレート:時系列の場合

mt:Archive系 のファンクションタグを単体で使用できます。

アーカイブテンプレート:カテゴリの場合

mt:Archive系 および mt:Category系 のファンクションタグを単体で使用できます。

アーカイブテンプレート:ユーザーの場合

mt:Archive系 および mt:Author系 のファンクションタグを単体で使用できます。

その他

上記以外のタグは、基本的にブロックタグ内でしか動作しないものですね。

まとめ

タグを使える場所、使えない場所が分かればテンプレート作成もスムーズに行えると思います。
あと、タグを使う場所によって、出力される内容も絞り込まれて変わりますので、意図しない値が出てきた場合はモディファイアで調整してみてくださいね。

FRESHERS WANTED!
Recent Entries
MD EVENT REPORT
What's Hot?
日本各地の酒蔵との直取引により厳選して仕入れた日本酒を世界に販売
こんな僕たちの仲間に入りませんか?
Movable Type AWS 移管&アップグレード サービス
SNS・ブログ・メールからの流入数が一目でわかる
2018年度 新卒採用 Webデザイナー/エンジニア、プロデューサー/ディレクター募集
50,000円からのシネマグラフ(Cinemagraph)制作
TAKUYAが教えるギター・レッスン
KenKenが教えるベースギター教則アプリ
SNS連動型クチコミ拡散システム「レビュー ジェネレーター サービス」
1時間1万円の撮影スタジオ
Share this on
Facebook Twitter Google+