Google先生に聞いたらすぐ出てくると思ったけど、なかなかうまく情報が拾えず、自前でゴニョゴニョする必要があったので備忘録的メモ。
学校や役所がらみだと、年別アーカイブを年度別(4月1日はじまり3月末締め)で情報を出す必要がある場合あり。
というか、あった。
まずは、pre_get_posts
で、ループ前に変更。
function custom__pre_get_posts( $query ) { if ( is_admin() || ! $query->is_main_query() ) { return $query; } if ( is_year() ) { $y = get_query_var( 'year' ); $date_from = $y . '-04-01'; $date_to = ( $y + 1 ) . '-03-31 23:59:59'; $query->set( 'date_query', array( 'compare' => 'BETWEEN', 'after' => $date_from, 'before' => $date_to, 'inclusive' => true, ) ); $query->set( 'year', null ); //元々あった年指定を削除 } return $query; } add_action( 'pre_get_posts', 'custom__pre_get_posts' );
これでOK。