WordPressでこれをやろうとしたら、簡単なようでいて、簡単ではなかったです。
調べてもデフォルトで用意されてるパラメータだけじゃ実現できず、かなりはまりました。
プラグインも似たような目的のがいろいろあって、やっと理想の動きをしてくれるのにたどり着いたので紹介しておきますね。
配布元はこちら
Archives for a category WordPress plugin
1. ダウンロードしたファイルを解凍して、kwebble_archives_by_cat.phpをプラグインディレクトリへアップロードします。
2. プラグインを有効化します。
3. kwebbleの管理画面から
Disable canonical URLs. にチェックをつけて、オプションを更新。
4. アーカイブリストを表示させたい場所に下記のタグで呼び出せます
<?php wp_get_archives('cat=1'); ?>
↑カテゴリー1だけの月別アーカイブ表示
<?php wp_get_archives('cat=2,3'); ?>
↑カテゴリー2と3の月別アーカイブを表示
(例)
カテゴリ1だけの一覧
![](http://1.bp.blogspot.com/_pp8T2rKFURE/SN8MfUuWWSI/AAAAAAAAAQ0/JELHLxoPuAo/s320/%E3%82%AB%E3%83%86%E3%82%B4%E3%83%AA%E5%88%A5%E3%82%A2%E3%83%BC%E3%82%AB%E3%82%A4%E3%83%96.jpg)
カテゴリ5だけの一覧
![](http://3.bp.blogspot.com/_pp8T2rKFURE/SN8PLZYYAeI/AAAAAAAAARE/eGxJDo4WVso/s320/%E3%82%AB%E3%83%86%E3%82%B4%E3%83%AA%E5%88%A5%E3%82%A2%E3%83%BC%E3%82%AB%E3%82%A4%E3%83%962.jpg)
(見本)
<?php if(in_category('1')): ?>
<?hp wp_get_archives('cat=1'); ?>//カテゴリ1のときは、1カテゴリのアーカイブ一覧を
<?php else: ?>
<?php wp_get_archives('cat=5'); ?>//それ以外のときは、カテゴリ5の一覧を出す
<?php endif; ?>