Wp_list_categoriesを呼び出すときと同じように、wp_get_archives関数で現在の月を取得するためのクラスを取得する方法を探しています(現在のカテゴリには ".current-cat"セレクタがあります)。 wp_list_pagesを呼び出すと、 '.current_page_item'セレクタがあります。
この機能はJoshua Abenazerの助けを借りて作成されました。ありがとうございます。基本的に、が月別アーカイブの場合は、現在の月を監視して取得し、liにクラスを追加します。うまくいった。
function wpse_62509_current_month_selector( $link_html ) {
if (is_month()){
$current_month = get_the_date("F Y");
if ( preg_match('/'.$current_month.'/i', $link_html ) )
$link_html = preg_replace('/<li>/i', '<li class="current-month">', $link_html );
}
return $link_html;
}
add_filter( 'get_archives_link', 'wpse_62509_current_month_selector' );
以下の関数をあなたのfunctions.php
に入れてください
function wpse_62509_current_month_selector( $link_html ) {
$current_month = date("F Y");
if ( preg_match('/'.$current_month.'/i', $link_html ) )
$link_html = preg_replace('/<li>/i', '<li class="current-month">', $link_html );
return $link_html;
}
そしてwp_get_archives()
を呼び出す直前に次の行を追加してください
add_filter( 'get_archives_link', 'wpse_62509_current_month_selector' );
他のwp_get_archives()
やwp_get_archives()
の関数呼び出しと混同しないように、get_archives_link()
を呼び出した後にフィルタを削除することもできます。
remove_filter( 'get_archives_link', 'wpse_62509_current_month_selector' );