Movable Type で空の配列を定義(mt:SetVar)する

2020-02-26
1分で読了
更新: 2025-12-14

目次

Movable Type で空の配列の変数を定義したいと思うことはありませんか?

利用するケースは少ないかもしれませんが、Movable Type のテンプレートで JSON を書き出すときなどに役立つかもしれません。

ただし、この方法は MTAppjQuery プラグインの json_decode モディファイアが必要です。

テンプレート

例えば members という空の配列を定義したいときは下記のようになります。解説はコード中のコメント( mt:Ignore 内)をご確認ください。

空の配列を意味する [] を empty_array という変数にセットしておく。


members 変数を初期化したい場所で json_decode モディファイアで [] を MT 変数に変換する。

もしこの空の配列に値を追加していきたい場合は、下記のようにすればOKです。

余談ですが、普通に とだけ書いて初期化した場合でも上記のように function="push" で値を追加して行くことはできます。

しかし、何も値を追加しなかった場合、その変数を JSON として出力すると空文字として扱われてしまいます。

下記のテンプレートで比較してみます。

変数を初期化



hobbies を初期化して entry 変数の hobbies キーにセット



members を初期化して entry 変数の members キーにセット



JSON として出力

結果は下記のようになります。

{
    hobbies: "",
    members: [ ]
}

この記事をシェア

関連記事