概要
cptui_tools_tabs
フィルタは、WordPressのプラグイン「Custom Post Type UI」において、カスタム投稿タイプの設定ページのタブをカスタマイズするために使用されます。このフィルタを利用することで、開発者は追加の設定タブを作成したり、既存のタブの順序や内容を変更することができます。一般的に、以下のような機能を実装する際に役立ちます:
- カスタムフィールドの設定タブの追加
- 特定のユーザー向けのオプションタブの作成
- セクションの分割による設定項目の整理
- プラグインの機能を補完するためのタブの追加
- API設定用専用タブの追加
- 他のプラグインとの連携タブの作成
フィルタの概要
- 構文:
add_filter( 'cptui_tools_tabs', 'your_function_name', 10, 1 );
- パラメータ:
$tabs
: 現在のタブを表す配列
- 戻り値: 修正されたタブを表す配列
- 対応するプラグインのバージョン: 1.7.0以上
- WordPressのバージョン: 4.0以上
この関数のアクションでの使用可能性
アクション | 使用可能性 |
---|---|
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 |
サンプルコード
サンプルコード1
add_filter( 'cptui_tools_tabs', function( $tabs ) {
$tabs['new_tab'] = array(
'title' => '新しいタブ',
'callback' => 'new_tab_content',
'priority' => 10
);
return $tabs;
});
function new_tab_content() {
echo '<h2>新しいタブの内容</h2><p>ここに追加の設定内容を記載できます。</p>';
}
説明: 新しいタブ「新しいタブ」を追加し、その中にコンテンツを表示します。
サンプルコード2
add_filter( 'cptui_tools_tabs', function( $tabs ) {
if ( current_user_can( 'administrator' ) ) {
$tabs['admin_only'] = array(
'title' => '管理者専用タブ',
'callback' => 'admin_tab_content',
'priority' => 20
);
}
return $tabs;
});
function admin_tab_content() {
echo '<h2>管理者専用の設定</h2><p>このタブは管理者のみがアクセスできます。</p>';
}
説明: 管理者のみがアクセスできる「管理者専用タブ」を追加します。
サンプルコード3
add_filter( 'cptui_tools_tabs', function( $tabs ) {
unset( $tabs['some_existing_tab'] );
return $tabs;
});
説明: 既存のタブ「some_existing_tab」を削除します。
サンプルコード4
add_filter( 'cptui_tools_tabs', function( $tabs ) {
$tabs['custom_tab'] = array(
'title' => 'カスタムタブ',
'callback' => 'custom_tab_content',
'priority' => 15
);
return $tabs;
});
function custom_tab_content() {
// ここにカスタム設定の内容
echo '<h2>カスタムタブ</h2><p>カスタム設定をここで行えます。</p>';
}
説明: 「カスタムタブ」を追加し、その中に設定内容を記載できます。
サンプルコード5
add_filter( 'cptui_tools_tabs', function( $tabs ) {
$tabs['advanced_options'] = array(
'title' => '高度なオプション',
'callback' => 'advanced_options_content'
);
return $tabs;
});
function advanced_options_content() {
echo '<h2>高度なオプション</h2><p>詳細な設定を行うためのオプション。</p>';
}
説明: 「高度なオプション」というタブを追加し、詳細な設定内容を表示します。