WordPress 標準のテンプレートタグを拡張して、カテゴリーごとの日付アーカイブへのリンクを表示できるようにしてくれるプラグインです。
日付アーカイブへのリンクを表示するとき、標準では下記のテンプレートを使用します。
<?php wp_get_archives(); ?>
ただ、これだけだとアーカイブの種類(月別、週別、日別等)しか指定できず、カテゴリーの指定ができません。
つまり、全てのカテゴリーがアーカイブの対象となってしまうため、いくつかのコンテンツに渡って投稿記事(ブログ形式)を使用しているようなサイトの場合、非常に困ったことになるのです。
当初は簡単に出来るだろうと思っていたら、いくらググっても有効な情報が見つからず、なかなか難儀しました。
(「ここが WordPress の CMS としての限界かー」とか思ったり)
で、ようやく見つけたのが、この「Archives for a category」というプラグイン。
上記の標準テンプレートタグを拡張して、カテゴリーも指定できるようにしてくれます。
導入
導入は他のプラグインと同様に、「Archives for a category WordPress plugin」のページからダウンロードしたファイルを解凍したら、「wp-content/plugins/」フォルダへアップロード。
その後、管理画面でインストールすれば完了です。
(「設定」タブに「Kwebble」メニューが追加されますが、これについては後述)
使用方法
使用するのは標準のテンプレートタグなのですが、カテゴリーを指定する引数が使用できるようになります。
指定の方法は、他のテンプレートタグと同じように、
<?php wp_get_archives('cat=1'); ?>
とするだけ。
また、複数のカテゴリーを指定することも、
<?php wp_get_archives('cat=1,3'); ?>
とすれば可能ですし、元々備わっているアーカイブの種類の指定と組み合わせるときも、
<?php wp_get_archives('type=daily&cat=1,3'); ?>
で OK です。
(ただ、どうも週別(weekly)との組み合わせはうまく動作してくれない模様)
パーマリンク設定に伴う注意
パーマリンクの設定が標準のままなら、ここまでの内容でプラグインは正常に動作します。
ただし、独自のパーマリンク設定をしている場合は、URL の指定がうまくいかないらしく、正常にアーカイブを表示してくれません。
(プラグインで指定した URL にアクセスしようとすると、パーマリンク設定の形にリダイレクトされるような感じになり、単なるカテゴリーアーカイブが表示されます)
そこで、先ほどプラグインの導入時に追加された「Kwebble」メニューを開き、「Disable canonical URLs.」をチェックして設定を保存してください。
これで「カテゴリーごとのアーカイブ」が正常に表示されるようになったはずです。
「Disable canonical URLs.」とは「正しい URL を無効にする」という意味で、要は「パーマリンク設定」を無効にすることのようです。
それによってプラグインが指定した URL でアクセスできるようになる、と。
というか、このプラグインを使う必要のあるサイトなら、パーマリンク設定は間違いなくしてそうなので、このチェックは必須かも知れません。
補足
ちなみに、使用するテンプレートはアーカイブ用ではなく、カテゴリー用のテンプレートみたいです。