任意のカテゴリでのみアーカイブリンクを表示したいときってありますよね。
基本的にはwp_get_archivs() で年毎や月毎で表示することができますが、今回は以下のように表示をしたかったので、
いろんな方のブログを参考に、コピペで対応できるようなソースを備忘録として残しておくことにします。
See the Pen archive_sample by sayuri (@giraffeweb) on CodePen.0
ソースはこちら↓↓↓↓↓↓↓
<?php $year_prev = null; $months = $wpdb->get_results("SELECT DISTINCT MONTH( post_date ) AS month , YEAR( post_date ) AS year, COUNT( id ) as post_count FROM $wpdb->posts WHERE post_status = 'publish' and post_date <= now( ) and post_type = 'post' GROUP BY month , year ORDER BY post_date DESC"); foreach($months as $month) : $year_current = $month->year; if ($year_current != $year_prev){ if ($year_prev != null){?> </ul></div> <?php } ?> <div><h4><?php echo $month->year; ?>年</h4> <ul> <?php } ?> <li> <a href="<?php bloginfo('url') ?>/date/<?php echo $month->year; ?>/<?php echo date("m", mktime(0, 0, 0, $month->month, 1, $month->year)) ?>"> <?php echo date("n", mktime(0, 0, 0, $month->month, 1, $month->year)) ?>月 (<?php echo $month->post_count; ?>) </a> </li> <?php $year_prev = $year_current; endforeach; ?> </ul></div>
条件にカテゴリ別の年別で月別アーカイブリストにするためにはどうすれば良いですか??