Title: 月別アーカイブをコンパクトにまとめたい
Last modified: 2013年6月11日

---

# 月別アーカイブをコンパクトにまとめたい

 *  解決済 [sato_17](https://ja.wordpress.org/support/users/sato_17/)
 * (@sato_17)
 * [13年、 4ヶ月前](https://ja.wordpress.org/support/topic/%e6%9c%88%e5%88%a5%e3%82%a2%e3%83%bc%e3%82%ab%e3%82%a4%e3%83%96%e3%82%92%e3%82%b3%e3%83%b3%e3%83%91%e3%82%af%e3%83%88%e3%81%ab%e3%81%be%e3%81%a8%e3%82%81%e3%81%9f%e3%81%84/)
 * お世話になります。
 * `<ul><?php wp_get_archives('type=monthly&post_type=hoge'); ?></ul>`
    を利用した
   際に表示を
 * >  2013年1月
   >  2013年2月 2013年3月 2012年1月 2012年2月 2012年3月 ではなく 2013
   > 1 2 3 2012 1 2 3
 * のようにしたいと思っています。プラグインの「Compact Archives」を利用出来たらと
   思ったのですが、カスタム投稿では利用出来ないようでした。カスタマイズをすればカスタム
   投稿でも使えるとは見かけたのですが調べてみても具体的なコードなどは乗っておらず。
 * 調べてるうちに[月別アーカイブ表示に年区切りを入れる](http://d.hatena.ne.jp/fujimori1981/20100313/1268419807)
   という記事を見つけ以下のコードで近い形には表示させることが出来ました。
 *     ```
       <?php
       $archives_year = strip_tags(wp_get_archives('type=yearly&show_count=0&format=custom&echo=0'));
       $archives_year_array = split("\n",$archives_year);
       array_pop($archives_year_array);
   
       $archives = wp_get_archives('type=monthly&post_type=replay&use_desc_for_title=0&order=ASC&echo=0');
       $archives_array = split("\n",$archives);
       foreach ($archives_year_array as $year_value){
            echo "<h4>".ltrim($year_value)."</h4>\n";
            echo "<ul>\n";
            foreach ( $archives_array as $archives_value) {
                 if ( intval(strip_tags($archives_value)) == intval($year_value) ) {
                      echo  str_replace(intval($year_value)."年","",ltrim($archives_value))."\n";
                      array_shift($archives_array);
                 }
            }
            echo "</ul>\n";
       }
       ?>
       ```
   
 * 出力結果
 * >  2013
   >  1月 2月 3月
 * 出来ればですが以下のようにしたいです。
 * ①投稿されていない記事の月も取得したい
    →現状では投稿された月しか表示されません
 * ②「月」を消したい
    →可能であれば月を消したいです
 * ③function.phpでまとめたい
    カスタム投稿はいくつかあるのですが、これだとコード
   が長いので `<ul><?php wp_get_archives('type=monthly&post_type=hoge'); ?></ul>`
   と記述して出力出来ればと思います。コードが短くなるのであれば他のやり方でも構いま
   せん。
 * ■カテ違いは承知ですが、もし先ほど述べたプラグイン（Compact Archives）をカスタム
   投稿でも利用出来るようになれるのであればそちらでも構いません。
 * 質問が多く申し訳ないですが、どれか一つでもご教授頂けたら幸いです。宜しくお願い
   します。

8件の返信を表示中 - 1 - 8件目 (全8件中)

 *  [gogoweb](https://ja.wordpress.org/support/users/gogoweb/)
 * (@gogoweb)
 * [13年、 4ヶ月前](https://ja.wordpress.org/support/topic/%e6%9c%88%e5%88%a5%e3%82%a2%e3%83%bc%e3%82%ab%e3%82%a4%e3%83%96%e3%82%92%e3%82%b3%e3%83%b3%e3%83%91%e3%82%af%e3%83%88%e3%81%ab%e3%81%be%e3%81%a8%e3%82%81%e3%81%9f%e3%81%84/#post-161938)
 * 短いプラグインなのでざっと見た感じだと
    post_type=’post’ のところを全部希望の
   カスタム投稿タイプに変更すれば多分希望の動作になるんじゃないでしょうか？
 * ＊未検証な上にデータベースを操作しているので自己責任かつテストサイトで検証して
   ください。
 *  トピック投稿者 [sato_17](https://ja.wordpress.org/support/users/sato_17/)
 * (@sato_17)
 * [13年、 4ヶ月前](https://ja.wordpress.org/support/topic/%e6%9c%88%e5%88%a5%e3%82%a2%e3%83%bc%e3%82%ab%e3%82%a4%e3%83%96%e3%82%92%e3%82%b3%e3%83%b3%e3%83%91%e3%82%af%e3%83%88%e3%81%ab%e3%81%be%e3%81%a8%e3%82%81%e3%81%9f%e3%81%84/#post-161958)
 * ＞gogoweb様
    テストサイトでやってみたところ、エラーは出ることがなかったのですが「
   Archive is empty」と表示されました。やり方が根本的に間違ってるのかもしれません。
   PHPはあまり詳しくないもので…具体的にどう記述すればいいのでしょうか？
 * > post_type=’post,hoge’
 * > post_type=’post’,’hoge’
 * この2つは試してみました。また特定のポストを指定する時は
 * `<ul> <?php compact_archive('post_type=hoge'); ?> </ul>`
 * のような感じになるのでしょうか。引き続きプラグインも含め何か分かる方はお教えくださる
   と幸いです。
 *  [gogoweb](https://ja.wordpress.org/support/users/gogoweb/)
 * (@gogoweb)
 * [13年、 4ヶ月前](https://ja.wordpress.org/support/topic/%e6%9c%88%e5%88%a5%e3%82%a2%e3%83%bc%e3%82%ab%e3%82%a4%e3%83%96%e3%82%92%e3%82%b3%e3%83%b3%e3%83%91%e3%82%af%e3%83%88%e3%81%ab%e3%81%be%e3%81%a8%e3%82%81%e3%81%9f%e3%81%84/#post-161969)
 * post_type=’post’
    のpostを消して代わりにカスタム投稿タイプを入れてください 例）
   post_type=’hoge’ こうすると投稿（post)の代わりにカスタム投稿を条件にできるはず
   です。
 *  トピック投稿者 [sato_17](https://ja.wordpress.org/support/users/sato_17/)
 * (@sato_17)
 * [13年、 4ヶ月前](https://ja.wordpress.org/support/topic/%e6%9c%88%e5%88%a5%e3%82%a2%e3%83%bc%e3%82%ab%e3%82%a4%e3%83%96%e3%82%92%e3%82%b3%e3%83%b3%e3%83%91%e3%82%af%e3%83%88%e3%81%ab%e3%81%be%e3%81%a8%e3%82%81%e3%81%9f%e3%81%84/#post-161970)
 * ＞gogoweb様
    おっしゃるとおりに入れ変えてみましたが、月は表示されたもののURLは
 * `<a href="http://hoge.jp/date/2013/01/">J</a>`
 * カスタム投稿でなく通常の投稿を取得してるようで変わりありませんでした。カスタマイズ
   は難しいのでしょうか。
 * 別の方法を模索して無理なようであれば諦めますが、引き続き回答をお待ちしております。
   もしないようであればいずれトピックは閉じさせてもらいます。gogoweb様ありがとう
   ございましたm(_ _)m
 *  [pluto1234](https://ja.wordpress.org/support/users/pluto1234/)
 * (@pluto1234)
 * [13年、 4ヶ月前](https://ja.wordpress.org/support/topic/%e6%9c%88%e5%88%a5%e3%82%a2%e3%83%bc%e3%82%ab%e3%82%a4%e3%83%96%e3%82%92%e3%82%b3%e3%83%b3%e3%83%91%e3%82%af%e3%83%88%e3%81%ab%e3%81%be%e3%81%a8%e3%82%81%e3%81%9f%e3%81%84/#post-161971)
 * 月別リンクに ?post_type=****** を追加すれば良いのでは？
 * 下の方
 *     ```
       if ($month_has_posts) {
         $post_type = '******';
         $result .= '<a href="'.get_month_link($year, $month).'?post_type='.$post_type.'" title="'.$month_name.' '.$year.'">'.$month_abbrev.'</a>';
       } else {
       　　:
       }
       ```
   
 *  トピック投稿者 [sato_17](https://ja.wordpress.org/support/users/sato_17/)
 * (@sato_17)
 * [13年、 4ヶ月前](https://ja.wordpress.org/support/topic/%e6%9c%88%e5%88%a5%e3%82%a2%e3%83%bc%e3%82%ab%e3%82%a4%e3%83%96%e3%82%92%e3%82%b3%e3%83%b3%e3%83%91%e3%82%af%e3%83%88%e3%81%ab%e3%81%be%e3%81%a8%e3%82%81%e3%81%9f%e3%81%84/#post-161972)
 * ＞pluto1234様
    希望通りに表示されるようになりましたが、複数指定かつ表示したい
   所に特定の投稿を指定するは可能なんでしょうか？
 * 事前に説明するべきだったと反省しておりますが、通常のサイトのようにいくつかのコンテンツ
   に分かれています。Blogというカスタム投稿だったり通所の投稿も使っています。その
   ページに訪れた際にはそのページのアーカイブを表示させたいと思っています。
 * 難しいようであればこのプラグインを使うのは諦めようと思います。注文が多く申し訳
   ないです。
 *  [pluto1234](https://ja.wordpress.org/support/users/pluto1234/)
 * (@pluto1234)
 * [13年、 4ヶ月前](https://ja.wordpress.org/support/topic/%e6%9c%88%e5%88%a5%e3%82%a2%e3%83%bc%e3%82%ab%e3%82%a4%e3%83%96%e3%82%92%e3%82%b3%e3%83%b3%e3%83%91%e3%82%af%e3%83%88%e3%81%ab%e3%81%be%e3%81%a8%e3%82%81%e3%81%9f%e3%81%84/#post-161973)
 * 投稿タイプ（post_type）を引数で渡すように修正（引数を追加）すればできます。
 *  トピック投稿者 [sato_17](https://ja.wordpress.org/support/users/sato_17/)
 * (@sato_17)
 * [13年、 4ヶ月前](https://ja.wordpress.org/support/topic/%e6%9c%88%e5%88%a5%e3%82%a2%e3%83%bc%e3%82%ab%e3%82%a4%e3%83%96%e3%82%92%e3%82%b3%e3%83%b3%e3%83%91%e3%82%af%e3%83%88%e3%81%ab%e3%81%be%e3%81%a8%e3%82%81%e3%81%9f%e3%81%84/#post-161989)
 * 引数を渡すというのがいまいち分かってなかったのですが、調べてなんとか出来るよう
   になりました！gogoweb様、pluto1234様ありがとうございましたm(_ _)m

8件の返信を表示中 - 1 - 8件目 (全8件中)

 トピック「月別アーカイブをコンパクトにまとめたい」には新たに返信することはできま
せん。

## タグ

 * [カスタム投稿タイプ](https://ja.wordpress.org/support/topic-tag/%e3%82%ab%e3%82%b9%e3%82%bf%e3%83%a0%e6%8a%95%e7%a8%bf%e3%82%bf%e3%82%a4%e3%83%97/)
 * [post_type](https://ja.wordpress.org/support/topic-tag/post_type/)
 * [wp_get_archives](https://ja.wordpress.org/support/topic-tag/wp_get_archives/)

 * フォーラム: [使い方全般](https://ja.wordpress.org/support/forum/how-to-and-troubleshooting/)
 * 8件の返信
 * 3人の参加者
 * 最後の返信者: [sato_17](https://ja.wordpress.org/support/users/sato_17/)
 * 最後の活動: [13年、 4ヶ月前](https://ja.wordpress.org/support/topic/%e6%9c%88%e5%88%a5%e3%82%a2%e3%83%bc%e3%82%ab%e3%82%a4%e3%83%96%e3%82%92%e3%82%b3%e3%83%b3%e3%83%91%e3%82%af%e3%83%88%e3%81%ab%e3%81%be%e3%81%a8%e3%82%81%e3%81%9f%e3%81%84/#post-161989)
 * 状態: 解決済

## トピック

### 人気のトピック

### 返信がないトピック

### サポート関連ではないトピック

### 解決済みのトピック

### 未解決のトピック

### すべてのトピック
