WordPressダッシュボードの記事一覧ページにタグ検索機能を追加する方法
WordPressダッシュボードの記事一覧ページは、デフォルトだと「キーワード検索」「日付・カテゴリ絞り込み検索」はあるものの、タグによる絞り込み検索はできない。ここにタグ絞り込み検索機能を追加したい。また、プラグインではなくfunctions.phpで対応したい。以下に対応方法をメモ。
対応方法
functions.php
functions.phpに以下を追記する。
//ダッシュボードの記事一覧にタグ検索を追加
function add_posts_search_tag_dashboard(){
global $post_type;
if( $post_type == 'post' ){
wp_dropdown_categories(
array(
'show_option_all' => 'タグ一覧', //未検索時のテキスト
'taxonomy' => 'post_tag', //対応するタクソノミー
'name' => 'tag', //検索のkey
'value_field' => 'slug', //検索のvalue
'selected' => get_query_var('tag'), //selectedにしておく項目
'show_count' => false, //記事数を非表示
'hide_empty' => true, //記事が1件も紐づいていない項目を非表示
)
);
}
}
add_action('restrict_manage_posts', 'add_posts_search_tag_dashboard');
//タグ未指定の場合は全検索
function search_all_tag(){
if( is_admin() && $_GET['tag'] === '0' ){
unset ($_GET['tag']);
}
}
add_action('load-edit.php', 'search_all_tag');
補足
今回はデフォルトの記事一覧にタグ検索を追加する想定になるが、カスタム投稿タイプの場合は「$post_type == 'post'」とwp_dropdown_categories内のパラメータを適宜変更する必要あり。
リファレンス
restrict_manage_posts
https://developer.wordpress.org/reference/hooks/restrict_manage_posts/
wp_dropdown_categories
https://developer.wordpress.org/reference/functions/wp_dropdown_categories/
load-{$page}
https://developer.wordpress.org/reference/hooks/load-page-php/
関連記事
-
-
Advanced Custom Fieldsでセレクトメニューを動的に生成する方法
WordPressでカスタムフィールド設定用のプラグインAdvanced Cus ...
-
-
WordPressでオリジナルのプラグインを作成する方法
WordPressでオリジナルのプラグインを作成する方法を以下にメモ。 &nbs ...
-
-
WordPressでサイト及びサーバ内ファイルが改ざんされた際の対処方法
WordPressで立ち上げたサイトがあり、しばらく放置していたが久しぶりにチェ ...
-
-
WordPressで固定ページに記事一覧を表示させるプラグイン
WordPressで固定ページ編集時にショートコードを書くことで、記事一覧を表示 ...
-
-
WordPressのContact Form 7から送信した内容をダッシュボードから確認及びCSVファイル化する方法
WordPressのContact Form 7プラグインで実装されたお問い合わ ...