MTの記事更新をJsonでトップページに再構築無しで更新する

記事の更新があったらjson形式で吐き出されるテンプレートを作成

[
<mt:Entries lastn="10">
{
"url" : "<mt:EntryPermalink encode_json="1">",
"title" : "<mt:EntryTitle encode_json="1">",
"date" : "<mt:EntryDate encode_json="1">",
"body" : "<mt:EntryBody encode_json="1">"
}<mt:If name="__last__"><mt:Else>,</mt:Else></mt:If>
</mt:Entries>
]

トップテンプレートにJSでjsonの読み込みを記述。

<dl id="wrap">
<script type="text/javascript">
$(function(){
$.getJSON("js/recent_entries.js", function(recent_list){
for(var i in recent_list){
var h = '<dt>'
+ '<a href="'
+ recent_list[i].url
+ '">'
+ recent_list[i].title
+ '</a>'
+ '</dt>'
+ '<dd>'
+ recent_list[i].date
+ '</dd>'
+ '<dd>'
+ recent_list[i].body
+ '</dd>';
$("dl#wrap").append(h);
}
});
});
</script>
</dl>

トップページを再構築しなくても記事一覧は自動更新される。

参考にしたサイト

https://designsupply-web.com/knowledgeside/1463/