MovableTypeのPHP化のその2です。ディスク容量を節約しながらサーバーの負荷も軽くするための作戦です。
その2:「カレンダ」も共通化してしまえ!
- 新しいテンプレートを追加します。仮に名前を「カレンダ」とします。
<table summary=”投稿されたエントリーへのリンク付き月間カレンダー”>
<caption><$MTArchiveDate format=”%B %Y”$></caption>
<tr>
<th class=”sunday” abbr=”日曜日”>日</th>
<th class=”weekday” abbr=”月曜日”>月</th>
<th class=”weekday” abbr=”火曜日”>火</th>
<th class=”weekday” abbr=”水曜日”>水</th>
<th class=”weekday” abbr=”木曜日”>木</th>
<th class=”weekday” abbr=”金曜日”>金</th>
<th class=”saturday” abbr=”土曜日”>土</th>
</tr>
<MTCalendar month=”this”>
<MTCalendarWeekHeader><tr></MTCalendarWeekHeader>
<td>
<MTCalendarIfEntries><MTEntries lastn=”1″><div class=”Underline<$MTCalendarDate format=”%m%d” $>”><a href=”<$MTBlogArchiveURL$><$MTCalendarDate format=”%Y” $>/<$MTCalendarDate format=”%m” $>/<$MTCalendarDate format=”%d” $>.php”><$MTCalendarDay$></a></MTEntries></div></MTCalendarIfEntries>
<MTCalendarIfNoEntries><div class=”Underline<$MTCalendarDate format=”%m%d” $>”><$MTCalendarDay$></div></MTCalendarIfNoEntries>
<MTCalendarIfBlank> </MTCalendarIfBlank>
</td>
<MTCalendarWeekFooter></tr></MTCalendarWeekFooter>
</MTCalendar>
</table> - [ウェブログの設定][アーカイブの設定]で月別に「カレンダ」を追加します。
- アーカイブ・ファイルのテンプレートで名称を「<$MTArchiveDate format=”%Y%m”$gt;.inc」とします。
- メインページのカレンダを表示したい部分に下記のとおり記入します。
<?php
//カレンダ
include “<$MTBlogArchiveURL$><$MTDate format=”%Y%m”$>.inc”;
?> - 月別アーカイブ/個別エントリのテンプレートのカレンダを表示したい部分に下記のとおり記入します。
<?php
//カレンダ
include “<$MTBlogArchiveURL$><$MTArchiveDate format=”%Y%m”$>.inc”;
?>
以上でカレンダの共通化が図れました。
月の数だけしかファイルを作成しないのでディスクの節約にもなりますし、サーバーの負荷を軽減することもできます。