以前にMovable Typeでjsonを生成する記事を投稿しましたが、glueモディファイアを使うことでも実装できるようだったので試してみます。
サンプルコード
インデックステンプレートで以下内容で新規作成を行い、jsonファイルとして保存と再構築を行います。
<mt:SetVarBlock name="entries_json">[
<mt:Entries lastn="0" glue=",">
{
"id": "<mt:EntryID>",
"title": "<mt:EntryTitle encode_json="1">",
"url": "<mt:EntryPermalink>",
"date": "<mt:EntryDate format="%Y-%m-%d %H:%M:%S">",
"categories": [
<mt:EntryCategories glue=",">
"<mt:CategoryLabel encode_json="1">"
</mt:EntryCategories>
]
}
</mt:Entries>
]</mt:SetVarBlock>
<mt:Var name="entries_json">
以前の記事では記事毎のカンマ区切りをMT:Unlessで判別して追加していましたが、glueを使うとシンプルな記述でjsonを生成できます。
これでjsonファイルが生成されるようになりました。
[
{
"id": "XXX",
"title": "XXXXXX",
"url": "https://example.com/XXX/",
"date": "YYYY-mm-dd HH:MM:SS",
"categories": [
"カテゴリA",
"カテゴリB"
]
},
~ 略 ~
]
コメントが承認されるまで時間がかかります。