当サイトの更新情報はトップページと、更新履歴専用ページに掲載している。この専用ページはMovable Typeの記事テンプレートで作成しているため都度再構築が必要になるが、インデックステンプレートにあるフィード配信用ファイル(atom.xml)を活用し、phpページに出力することでリアルタイムで反映。
更新履歴ページ
掲載したい箇所にコードを記載。ページの拡張子がphpであることが前提。
<ul> <?php $RSSpath = "<mt:WebsiteURL>atom.xml"; $XML = simplexml_load_file ( $RSSpath ); foreach ( $XML->entry as $entry ) { $published = $entry->published; $title = $entry->title; $link = $entry->link->attributes ()->href; echo "<li>$published <a href='$link'>$title</a></li>"; } ?> </ul>
atom.xml の各記事に設定された「publish」「title」「link」を拾い、整形して出力(echo)というわけ。日付部分に余計な情報が付いているが、このページはトップページ表示のおまけ扱いなので、更新したと分かって貰えればいいのだ。細かいことは気にしないw
ページ自体をインデックステンプレートで作成したり、日付を整形した別ファイルを作ってincludeする方法もあるが、閲覧頻度を考え無駄を省く方向で。