私の WordPress ブログは現在、月ごとの形式でアーカイブを表示しています。このような:
2014 年 11 月 2014 年
10 月 2014 年
9 月 2014 年
8 月 2014 年
7 月 2014 年
6 月 2014 年
5 月
…
など
現在の年がすべての月を表示するように表示する必要がありますが、その前のすべての年については、「年」のみが表示されます。このようなもの:
2014年11月 2014年
10月 2014年
9月
...
... 2014年
2月 2014年
1月
2013
年 2012
年 2011
年 2010年
誰かがこれについて私を案内してもらえますか? 私のブログのサイドバーの現在のコードは次のようになります。
<?php /* If this is a category archive */ if ( is_category(0) || in_category(0)) { ?>
<?php ?><ul>
<?php
$querystr = "SELECT YEAR(post_date) AS 'year', MONTH(post_date) AS 'month' , count(ID) as posts FROM $wpdb->posts INNER JOIN $wpdb->term_relationships ON($wpdb->posts.ID = $wpdb->term_relationships.object_id) INNER JOIN $wpdb->term_taxonomy ON($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id) WHERE $wpdb->term_taxonomy.term_id != 12 AND $wpdb->term_taxonomy.parent != 12 AND $wpdb->term_taxonomy.taxonomy = 'category' AND $wpdb->term_taxonomy.term_id =8 AND $wpdb->posts.post_status = 'publish' AND $wpdb->posts.post_type = 'post' GROUP BY YEAR(post_date), MONTH(post_date) ORDER BY post_date DESC";
$years = $wpdb->get_results($querystr);
foreach ( (array) $years as $year ) {
$url = get_month_link($year->year, $year->month );
$url = $url.'?cat=8';
$date = mysql2date('F o', $year->year.'-'.$year->month, $translate = true);
echo get_archives_link($url, $date, 'html','<li>','</li>');
}
?>
</ul><?php
?>
<?php } else { ?>
<?php wp_get_archives('type=monthly');?>
<?php } ?>
</ul>
</div>
<div class="archive-bottom"></div>
<!-- <div class="clear"></div>-->
<?php } ?>
</div>