Movable Type CMSプラットフォーム Movable Type
ドキュメントサイト

Template Tag Referenceテンプレートタグリファレンス

MTVar

最終更新日: 2026.01.28

定義した変数から値を呼び出します。

ただし、valueモディファイアを使用してかつopモディファイアを使用しない場合、 MTSetVar ファンクションタグと同じ働きになります。モディファイアの使い方は MTSetVar のドキュメントを参照してください。

  • 使い方
MTGetVar として使う
<mt:Var name="foo">

MTSetVar として使う
<mt:Var name="entries_per_page" value="5">

モディファイア

name="foo"
var="foo"

変数の名前を指定します。このモディファイアは必須です。

value="bar"

変数の値を指定します。このモディファイアを指定した場合は、MTSetVar ファンクションタグと同じ働きになります。

op MT4.1

op モディファイアに関しては、テンプレートタグで利用できる演算関数を参照ください。

value モディファイアを指定していても、op モディファイアを併せて指定した場合は MTSetVar ファンクションタグと同じ働きになりません。

index MT4.1

配列のインデックス (添え字) を指定します。

配列変数が存在しない場合や指定されたインデックスの値が存在しないときは空の文字列を返します。

<$mt:Var name="foo" index="0"$>

このタグは以下のようにも書くことができます。

<$mt:Var name="foo[0]"$>

名前[添え字] という記述が index モディファイアの代わりです。

key MT4

ハッシュのキーを指定します。

ハッシュ変数が存在しない場合や指定されたキーが存在しないときは空の文字列を返します。

<$mt:Var name="bar" key="a"$>

このタグは以下のようにも書くことができます。

<$mt:Var name="bar{a}"$>

名前{キー} という記述が key モディファイアの代わりです。

default MT4

変数の値が空の文字列、もしくは未定義の場合に、代わりに出力する値を指定できます。

変数の値が 0 の場合、default モディファイアに指定した値は出力されません。変数の値が 0 の場合に別の値を出力したい場合は、MTIf タグや MTUnless タグを使用してください。

<$mt:Var name="foo" value="0"$>
<mt:If name="foo">
    foo は 0 以外の値です。
<mt:Else>
    foo は 0、もしくは空文字列または未定義です。
</mt:If>
function MT4.1

配列やハッシュ変数に値を設定するときに実行する関数の名前を指定します。利用できる名前は以下のとおりです。

  • pop - 配列変数の一番上 (または一番最後) から値を返します。
  • shift - 配列変数の一番下 (または一番最初) から値を返します。
  • count - 配列変数に含まれる値の数、またはハッシュ変数に含まれるキーの数を返します。
  • delete - key モディファイアで指定されたキーの値を返します。指定されたキーと値のペアはハッシュ変数から削除されます。
<$mt:Var name="foo" function="pop"$>

このタグは以下のようにも書くことができます。

<$mt:Var name="pop(foo)"$>

関数名(名前) という記述が function モディファイアの代わりです。

to_json MT4

配列変数またはハッシュ変数を指定した場合、値をJSON形式にして返します

glue MT4

to_jsonモディファイアが未指定かつ配列変数を指定した場合、配列変数の値をglueモディファイアで指定した文字列で連結して返します。

関連記事

MTVar と関連のあるテンプレートタグ (7)

  • このタグは現在、非推奨です。MTVar タグを使用してください。

    定義した変数から値を呼び出します。

  • キー(変数名)と値のペアをまとめてハッシュ変数に設定するためのブロックタグです。

  • 変数を定義して値を設定します。変数を呼び出すときは、MTGetVar, MTVar ファンクションタグを利用します。

    また設定した値は $name_foo として、モディファイアの値としても利用することができます。

    変数の名前に、ハイフンを利用すると、$name-foo のような $ を利用したモディファイアを正常に評価できません。このため、ハイフンの利用はお控えください。

  • このブロックタグで囲んだ内容を値にした変数を設定します。このタグの中ではテンプレートタグが利用できます。変数を呼び出すときは、MTGetVar, MTVar ファンクションタグを使います。

    MTSetVarTemplate ブロックタグとの違いは、囲んだ内容が処理された結果が値となるか、囲んだ内容が処理されずテンプレートのまま値となるかです。MTSetVarBlock ブロックタグでは囲んだ内容が処理された結果が値となります。

    設定した値は $name_foo として、モディファイアの値としても利用することができます。

    変数の名前にハイフンを利用すると、$name-foo のような $ を利用したモディファイアを正常に評価できません。このため、ハイフンの利用はお控えください。

  • 変数の名前とその値をまとめて設定できるブロックタグです。MTSetVar ファンクションタグでは、name モディファイアに変数の名前を、value モディファイアに変数に設定する値を入力します。MTSetVars タグではひとつの変数の設定を、変数の名前=変数に設定する値 というフォーマットでおこないます。また、MTSetVarBlock ブロックタグのように、テンプレートタグを使用することができます。

    変数の名前にハイフンを利用すると、$name-foo のような $ を利用したモディファイアを正常に評価できません。このため、ハイフンの利用はお控えください。

  • このブロックタグで囲んだ内容を値にした変数を設定します。変数を呼び出すときは、MTGetVar, MTVar ファンクションタグを使います。

    MTSetVarBlock ブロックタグとの違いは、囲んだ内容が処理された結果が値となるか、囲んだ内容が処理されずテンプレートのまま値となるかです。MTSetVarTemplate ブロックタグでは囲んだ内容が処理されずテンプレートがそのまま値となり、MTGetVar, MTVar ファンクションタグで呼び出されたテンプレートで処理をおこないます。このテンプレートタグは主に管理画面で利用されます。

    設定した値は $name_foo として、モディファイアの値としても利用することができます。

    変数の名前にハイフンを利用すると、$name-foo のような $ を利用したモディファイアを正常に評価できません。このため、ハイフンの利用はお控えください。

  • 定義した変数から値を呼び出します。このテンプレートタグは MTGetVar ファンクションタグと同じ働きをします。 (エイリアス)

    ただし、value モディファイアを使用した場合は MTSetVar ファンクションタグと同じ働きになります。