概要
cptui_main_page_custom_questions
フィルタは、WordPressのプラグイン「Custom Post Type UI」によって提供されるフックの一つです。このフィルタを使用することで、カスタム投稿タイプの設定画面に表示される質問項目を拡張したり、カスタマイズしたりすることができます。具体的には、以下のような機能を実装する際によく使われます。
- 新しいカスタム質問の追加
- 既存の質問項目のラベル変更
- 質問の表示順序の変更
- 質問の説明文をカスタマイズ
- 質問の必須項目設定
- フォームの使いやすさ向上のためのカスタムフィールドの追加
フィルタの構文
add_filter('cptui_main_page_custom_questions', 'your_custom_function');
パラメータ
$questions
: カスタム質問の配列
戻り値
- カスタマイズされたカスタム質問の配列
使用可能なプラグインバージョン
- Custom Post Type UI: 1.0以上
使用可能なWordPressバージョン
- WordPress: 4.0以上
サンプルコード
サンプルコード 1
add_filter('cptui_main_page_custom_questions', function($questions) {
$questions['custom_question_1'] = 'カスタム質問 1';
return $questions;
});
このコードは、カスタム質問として「カスタム質問 1」を追加します。
サンプルコード 2
add_filter('cptui_main_page_custom_questions', function($questions) {
if (isset($questions['post_type_name'])) {
$questions['post_type_name'] = '新しいラベル名';
}
return $questions;
});
このコードは、特定の投稿タイプに関連する質問のラベルを「新しいラベル名」に変更します。
サンプルコード 3
add_filter('cptui_main_page_custom_questions', function($questions) {
$questions[] = [
'name' => 'custom_description',
'label' => 'カスタム説明',
'type' => 'textarea',
];
return $questions;
});
このコードは、カスタム投稿タイプに「カスタム説明」というテキストエリアフィールドを追加します。
サンプルコード 4
add_filter('cptui_main_page_custom_questions', function($questions) {
$questions['custom_question_2'] = [
'label' => '必須の質問',
'required' => true,
];
return $questions;
});
このコードは、「必須の質問」という新しい質問を追加し、それを必須項目として設定します。
サンプルコード 5
add_filter('cptui_main_page_custom_questions', function($questions) {
$questions[] = 'カスタム選択肢';
return $questions;
});
このコードは、質問のリストに「カスタム選択肢」を追加します。
この関数のアクションでの使用可能性
アクション | 使用可能性 |
---|---|
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 |