概要
cptui_inside_taxonomy_wrap
フィルタは、WordPressのCustom Post Type UIプラグインによって提供され、カスタムタクソノミーの管理画面での表示をカスタマイズするために使用されるフックです。主に以下のような機能を実装する際によく使われます。
- 管理画面のタクソノミー設定ページのカスタマイズ
- フィールドの追加や削除
- 既存フィールドのラベル変更
- UIの整形(CSSの追加など)
- JavaScriptによる動的要素の追加
- 特定の条件に基づくフィールドの表示/非表示制御
構文
add_filter('cptui_inside_taxonomy_wrap', 'my_custom_function', 10, 2);
パラメータ
$taxonomy_wrap
: タクソノミー設定の出力を制御するためのHTMLコード$taxonomy
: 現在のタクソノミーに関する情報を含む配列
戻り値
- 変更されたHTMLコード(
$taxonomy_wrap
)
使用可能なプラグインバージョン
- Custom Post Type UI: バージョン 1.0.0以降
使用可能なWordPressバージョン
- WordPress: バージョン 4.0以降
サンプルコード
サンプルコード 1: タクソノミー設定にカスタムメッセージを追加
add_filter('cptui_inside_taxonomy_wrap', 'add_custom_taxonomy_message', 10, 2);
function add_custom_taxonomy_message($taxonomy_wrap, $taxonomy) {
$custom_message = '<div class="custom-message">カスタムタクソノミーについての説明がここに表示されます。</div>';
return $taxonomy_wrap . $custom_message;
}
説明: タクソノミー設定ページの底にカスタムメッセージを追加するサンプルコード。
サンプルコード 2: タクソノミーのラベルを変更
add_filter('cptui_inside_taxonomy_wrap', 'change_taxonomy_labels', 10, 2);
function change_taxonomy_labels($taxonomy_wrap, $taxonomy) {
if ($taxonomy['taxonomy'] === 'your_taxonomy_name') {
$taxonomy_wrap = str_replace('原状のラベル', '新しいラベル', $taxonomy_wrap);
}
return $taxonomy_wrap;
}
説明: 特定のタクソノミーに対して、そのラベルを変更するサンプルコード。
サンプルコード 3: タクソノミー設定にカスタムCSSを追加
add_filter('cptui_inside_taxonomy_wrap', 'add_custom_css_to_taxonomy', 10, 2);
function add_custom_css_to_taxonomy($taxonomy_wrap, $taxonomy) {
$custom_css = '<style>.custom-class { background-color: #f0f0f0; }</style>';
return $taxonomy_wrap . $custom_css;
}
説明: タクソノミー設定ページにカスタムCSSを追加し、スタイルを適用するサンプルコード。
サンプルコード 4: 特定条件でフィールドを非表示にする
add_filter('cptui_inside_taxonomy_wrap', 'hide_fields_conditionally', 10, 2);
function hide_fields_conditionally($taxonomy_wrap, $taxonomy) {
if (current_user_can('administrator')) {
return $taxonomy_wrap; // 管理者には表示
} else {
return str_replace('<input name="specific_field_name"', '<input name="specific_field_name" style="display:none;"', $taxonomy_wrap);
}
}
説明: 管理者以外のユーザーに特定のフィールドを非表示にするサンプルコード。
サンプルコード 5: JavaScriptを使って動的要素を追加
add_filter('cptui_inside_taxonomy_wrap', 'add_dynamic_js_element', 10, 2);
function add_dynamic_js_element($taxonomy_wrap, $taxonomy) {
$dynamic_js = '<script>console.log("タクソノミーデータ:" + ' . json_encode($taxonomy) . ');</script>';
return $taxonomy_wrap . $dynamic_js;
}
説明: タクソノミーに関するデータをコンソールに出力するJavaScriptを追加するサンプルコード。
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | |
get_header | |
wp_head |
この表は cptui_inside_taxonomy_wrap
フィルタがどのようなアクションで使用可能であるかを示しています。