「WordPressで学ぶPHP(1)変数・制御構造編」が発売されました。
「WordPressで学ぶPHP」シリーズの第1巻で、WordPressを通してPHPを学んでいく本です。
この本では、PHPの基本となる変数と制御構造について解説します。
Kindle本で、定価500円です。
ブログの全ページに最新記事のリストを出力するワザ・その2
先日、「ブログの全ページに最新記事のリストを出力する裏ワザ」という記事を公開したところ、「MTArchiveListタグを使えばできる」というコメントをいただきました。
MTArchiveListタグは盲点でした。
ということで、MTArchiveListタグを使って、ブログの全ページに最新記事のリストを出力するワザを紹介します。
1.MTArchiveListタグについて
MTArchiveListタグは、アーカイブページの一覧を出力するブロックタグです。
主に、月別アーカイブページの一覧を出力する際に使うことが多いです。
ただ、「archive_type」というモディファイアを使えば、月別に限らず、各種のアーカイブページのリストを出力することができます。
「archive_type="Individual"」とすれば、ブログ記事アーカイブのリスト、つまり最新記事のリストも出力することができます。
さらに、「archive_type="Individual"」のモディファイアを指定している場合、MTArchiveListタグのブロックの中で、MTEntry系のテンプレートタグを使うこともできます。
なお、MTArchiveListタグでは、lastnモディファイアでリストに出力する件数を指定したり、sort_orderモディファイアで並び順を指定することもできます。
2.例
Movable Type付属の「既定のブログ」(MT5では「クラシックブログ」)のテンプレートで、サイドバーに最新記事を10件を出力したいとします。
この場合、以下のようなウィジェットを作り、そのウィジェットをサイドバーに組み込むようにします。
<mt:If tag="BlogEntryCount">
<mt:ArchiveList archive_type="Individual" lastn="10">
<mt:ArchiveListHeader>
<div class="widget-recent-entries widget-archives widget">
<h3 class="widget-header">最近のブログ記事(さらに改)</h3>
<div class="widget-content">
<ul>
</mt:ArchiveListHeader>
<li><a href="<$mt:EntryPermalink$>"><$mt:EntryTitle$></a></li>
<mt:ArchiveListFooter>
</ul>
</div>
</div>
</mt:ArchiveListFooter>
</mt:ArchiveList>
</mt:If>
3.この方法の弱点
MTArchiveListタグを使う方法だと、最近の○○件の記事を取り出すことは、簡単に行うことができます。
ただ、MTEntriesタグにとは違って、複雑なモディファイアを指定することができません。
複雑なモディファイアを指定する必要がある場合は、先日の記事に書いた方法を使う必要があります。
