MTArchivePrevious

| | コメント(1) | トラックバック(0)

カテゴリ:

ブログのデザインは、ほぼデフォルトのまま運用している。
デフォルトだと、トップページを一番下までスクロールしたときに、
「アーカイブ」というリンクしかない。

もちろん、サブカラムには月別アーカイブのリンクやカテゴリ別のリンクが
貼られているけれど、
一番下までスクロールしたあとだと、
それらのリンクは見えない。

ブログを見てくれた人がもっと遡って記事を見たい場合、
ページのスクロールを戻してリンクをクリックして
もらわないといけないことになる。

それだと不便なので、前々から「さらに前の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

comments powered by Disqus

トラックバック(0)

このブログ記事を参照しているブログ一覧: MTArchivePrevious

このブログ記事に対するトラックバックURL: http://nozawashinichi.sakura.ne.jp/MT-4.25/mt-tb.cgi/274

コメント(1)

I'm happy very good site

comments powered by Disqus

このブログ記事について

このページは、Shinichi Nozawaが2009年1月10日 14:50に書いたブログ記事です。

ひとつ前のブログ記事は「スパムちゃんぷるー」です。

次のブログ記事は「デリファレンスとは実体化すること」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。