Web 制作のことを中心に、ちょっとした Tips などを掲載しています。「自分用メモ」が基本スタンス。

btmup Blog

WordPress

カテゴリーごとの日付アーカイブを表示する WordPress プラグイン - 「Archives for a category」

投稿日:

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 でアクセスできるようになる、と。

というか、このプラグインを使う必要のあるサイトなら、パーマリンク設定は間違いなくしてそうなので、このチェックは必須かも知れません。

補足

ちなみに、使用するテンプレートはアーカイブ用ではなく、カテゴリー用のテンプレートみたいです。

参考にしたサイト




-WordPress
-, , ,

Copyright© btmup Blog , 2019 All Rights Reserved Powered by AFFINGER5.