blogのエントリー画面に「最新コメント」などを付けていても、古いエントリーでは全然最新じゃない、なんてことが起きます。
これは、エントリーの画面(正確に言うとPermalinkで示された、Individual archivesテンプレートで生成されたページ)は、「blog全体をrebuildする」、「individual archivesをrebuildする」、「そのエントリーに書き込みがあった場合」のどれかの最後の時点から、ページが更新されないからです。
Movable Typeでは、試みとして各ページを動的に生成することを考慮したこともあったようですが、重くて実用にならなかったようです。
しかしWWWサーバーでSSI(サーバーサイド・インクルード)を設定できれば、サイドバーなどを最新の状態に保てます(それでもサーバーに負荷はかかりますが)。
サーバーでの設定は次のとおり
・WWWサーバーでSSIを使える設定にする(これは各自)
・MTのmt.cfgで「HTMLPerms 0777」のコメントを外す
次に、最新の状態にしたい部分ごとに、新しいIndex Templateを作ります。
例えば最新のコメントを「recent-comments.cgi」というファイル名で、Index Templateとして作成します。
Recent-comments.cgi
#!/usr/bin/perl -w
print <<div class="sidetitle">
Recent Comments
</div><div class="side">
<MTEntries recently_commented_on="5">
- [<a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a>]<br />
<MTComments lastn="2">
+ <$MTCommentAuthorLink show_email="0"$> at <a href="<$MTEntryLink$>#<$MTEntryID pad="1"$>"><$MTEntryDate format="%H:%M %b/%d"$></a><br />
</MTComments>
</MTEntries></div>
EOF
exit;
最後に表示させたい場所(例えばIndividual Entry Archive)に
<!--#exec cmd="<$MTBlogSitePath$>recent-comments.cgi" -->
などとします。