実装にはfunctions.php
に下記のように記述します。
functions.php
add_action( 'restrict_manage_posts', 'add_post_tag_filter' );
function add_post_tag_filter() {
global $post_type;
if ( $post_type == 'post' ) {
wp_dropdown_categories( array(
'show_option_all' => 'すベてのタグ',
'orderby' => 'name',
'hide_empty' => 0,
'selected' => get_query_var( 'tag' ),
'name' => 'tag',
'taxonomy' => 'post_tag',
'value_field' => 'slug',
) );
}
}
絞り込み選択時のセレクトボックスは、カテゴリーリストを表示するときなどに使用するwp_dropdown_categories()
で出力しているので、並びの変更ならorderby
、投稿がないものは非表示にしたいならhide_empty
といったように、各引数の値を任意のものにすれば出力内容を変更できます。
最後にunset()
を行なっている処理についてはもっと適した方法がありそうですが、「すベてのタグ」選択状態で検索を実行した際にうまく反映されない対策になります。