ブログのサイドバーとかで、アーカイブのセレクトボックスを設置した際に、年別アーカイブだと、「2020」とか表示されてちょっと物足りない感じ。できれば「2020年」とか表示された方がいいんじゃないかと思い、表示方法を調べてみた。
【年別アーカイブをセレクトボックで表示するコード】
<select name="archive-dropdown" onChange='document.location.href=this.options[this.selectedIndex].value;'> <?php wp_get_archives (array( 'type' => 'yearly', 'format' => 'option', 'show_post_count' => '0' )); ?> </select>
「年」という文字を表示させたい場合は、functions.phpに以下を追加
function add_nen_year_archives( $link_html ) { $regex = array ( "/ title='([\d]{4})'/" => " title='$1年'", "/ ([\d]{4}) /" => " $1年 ", "/>([\d]{4})<\/a>/" => ">$1年</a>" ); $link_html = preg_replace( array_keys( $regex ), $regex, $link_html ); return $link_html; } add_filter( 'get_archives_link', 'add_nen_year_archives' );