• Home
  • Movable Type
  • MTAppjQuery
  • MTAppjQuery v2.3.0 リリース - 深い入れ子の JSON データを効率よく扱う mt:Foreach、mt:NestVar タグを追加

MTAppjQuery v2.3.0 リリース - 深い入れ子の JSON データを効率よく扱う mt:Foreach、mt:NestVar タグを追加

本日、MTAppjQuery v2.3.0 をリリースしました。

今回のリリースでは、下記の機能の向上を図りました(使用例は後述)。

mt:Foreach タグを追加

配列を効率よくループする mt:Foreach タグを追加しました(使用例は後述)。

mt:NestVar タグを追加

入れ子になっている配列・連想配列から効率よくデータを取り出せる mt:NestVar タグを追加しました。

記事・ウェブページのメニューのサイトごとの表示・非表示の設定に対応

記事とウェブページのメニューをサイトごとに表示・非表示を設定できるようになりました。

システムのプラグイン設定で 表示する になっている場合は、各サイトのプラグイン設定を優先します。 つまり、サイトごとに「記事」「ウェブページ」のメニューの表示・非表示を制御したい場合は、システム設定で 表示する にしておき、各サイトのプラグイン設定で 表示する表示しない を選択してください。 また、システム設定で 表示しない になっている場合はすべてのサイトで非表示となります。

mt:Foreach と mt:NestVar のサンプル

例えば、下記のようなことができます。

<mt:SetVarBlock name="json">{
 "data": [
 { "id": 1,
 "name": "テスト01",
 "data": [
 {"col01": "データ1-A"},
 {"col02": "データ1-B"},
 {"col03": "データ1-C"}
 ]
 },
 { "id": 2,
 "name": "テスト02",
 "data": [
 {"col01": "データ2-A"},
 {"col02": "データ2-B"},
 {"col03": "データ2-C"}
 ]
 },
 { "id": 3,
 "name": "テスト03",
 "data": [
 {"col01": "データ3-A"},
 {"col02": "データ3-B"},
 {"col03": "データ3-C"}
 ]
 }
 ]
}</mt:SetVarBlock>

<mt:Var name="json" json_decode="1" setvar="items" />
<mt:Foreach name="items.data" as="item">
 <mt:If name="__first__">
 <ul>
 </mt:If>
 <li><mt:Var name="item" key="id" />: <mt:NestVar name="item.data.0.col01" /></li>
 <mt:If name="__last__">
 </ul>
 </mt:If>
</mt:Foreach>

また、下記のようにすることもできます。

<mt:SetVarBlock name="json">{
 "data": [
 { "id": 1,
 "name": "テスト01",
 "data": [
 {"value": "データ1-A"},
 {"value": "データ1-B"},
 {"value": "データ1-C"}
 ]
 },
 { "id": 2,
 "name": "テスト02",
 "data": [
 {"value": "データ2-A"},
 {"value": "データ2-B"},
 {"value": "データ2-C"}
 ]
 },
 { "id": 3,
 "name": "テスト03",
 "data": [
 {"value": "データ3-A"},
 {"value": "データ3-B"},
 {"value": "データ3-C"}
 ]
 }
 ]
}</mt:SetVarBlock>

<mt:Var name="json" json_decode="1" setvar="items" />
<mt:Foreach name="items.data" as="item">
 <mt:If name="__first__">
 <ul>
 </mt:If>
 <li>
 <mt:Var name="item" key="id" />: <mt:Var name="item" key="name" />
 <mt:Foreach name="item.data" as="data">
 <mt:If name="__first__">
 <ul>
 </mt:If>
 <li><mt:NestVar name="data.value" /></li>
 <mt:If name="__last__">
 </ul>
 </mt:If>
 </mt:Foreach>
 </li>
 <mt:If name="__last__">
 </ul>
 </mt:If>
</mt:Foreach>

ダウンロード

すでにライセンスをお持ちの方は、サポートサイトの「製品ダウンロード」のページからダウンロードできます。

引き続きよろしくお願いいたします!

MTAppjQuery について

Movable Type の管理画面をフロントエンドの知識だけで簡単にカスタマイズすることができます。

クライアントの満足度を高めるためにぜひお使いください。

MTAppjQuery の詳細を見る

MTAppjQuery