ブログのデザインは、ほぼデフォルトのまま運用している。
デフォルトだと、トップページを一番下までスクロールしたときに、
「アーカイブ」というリンクしかない。
もちろん、サブカラムには月別アーカイブのリンクやカテゴリ別のリンクが
貼られているけれど、
一番下までスクロールしたあとだと、
それらのリンクは見えない。
ブログを見てくれた人がもっと遡って記事を見たい場合、
ページのスクロールを戻してリンクをクリックして
もらわないといけないことになる。
それだと不便なので、前々から「さらに前の5日分」みたいな
リンクを作りたいと思っていた。
けれど、これはいまのHTMLファイルを書き出す静的なリンクマッピングだと
膨大な数の「5日分」のHTMLファイルをはき出さないといけないことになる。
PHPで動的に生成するならばわけないのだけど。
それで、次善の策として、
アーカイブの横に、「今月の記事」「先月の記事」というリンクを
生成することにした。
<MTArchiveList archive_type="Monthly" lastn="1"> <mt:ArchivePrevious> <<a href="<$mt:ArchiveLink$>">先月の記事</a> | </mt:ArchivePrevious> <<a href="<$mt:ArchiveLink$>">今月の記事</a> | </MTArchiveList>
こうすると、
という風に表示される。
MTArchiveListというタグは、archive_typeで指定された方式のアーカイブの
リストを生成する。(そのままか。)
いま、Monthlyを指定しているので、
2009年1月
2008年12月
2008年11月
・・・
となる。
lastnモディファイアを使ってはじめの1つだけを生成するようにしてあるので、
2009年1月
の分だけが現れる。
MTArchivePreviousというタグは、
現在のアーカイブの前のアーカイブの内容を表示する。
いま、MTArchivePreviousをMTArchiveListが包んでいて、
それがMonthlyであるから、MTArchivePreviousは
「いまは月別のアーカイブなのだな」ということがわかり、
いまlastn=1なので、どれより一個前なのか、というのも
それで決まる。
このように、MTArchivePrevious(同時にMTArchiveNext)は
どのようなアーカイブの文脈(コンテキスト)で用いられているか
わからないとエラーになる。
参考リンク:
http://www.movabletype.org/documentation/appendices/tags/archivelist.html
http://www.movabletype.jp/documentation/appendices/tags/archiveprevious.html
I'm happy very good site