WEB系キャンパス

アーカイブリストのセレクトボックスに「年」を表記

ブログのサイドバーとかで、アーカイブのセレクトボックスを設置した際に、年別アーカイブだと、「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' );

参考サイト

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です