概要
ninja_forms_check_setting_{$setting_id}
フィルタは、Ninja Formsプラグイン内で特定の設定がチェックされる際に、設定値をカスタマイズするために使用されます。このフックは、設定が検証されたり取得されたりする際に実行されるため、開発者は特定の条件に応じて設定の値を変更することができます。
よく使われる機能
以下は、ninja_forms_check_setting_{$setting_id}
フィルタがよく使われる機能の例です:
1. 特定のユーザー条件に基づいてフォームの表示設定を変更する。
2. 設定のデフォルト値を動的に変更する。
3. 特定のフィールドの有効/無効をカスタマイズする。
4. ユーザーのロールに応じて異なる設定を提供する。
5. プラグインのカスタム設定を実行時に変更する。
6. フォームの条件に応じた設定の検証を行う。
Ninja Formsのバージョン1.5.0以降で使用可能であり、WordPressのバージョン3.0以降で動作します。
構文
add_filter( 'ninja_forms_check_setting_{$setting_id}', 'your_function_name', 10, 2 );
パラメータ
$value
– 設定の現在の値。$setting_id
– 現在チェックしている設定のID。
戻り値
フィルタリングされた設定の値。
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
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( 'ninja_forms_check_setting_email_to', function( $value, $setting_id ) {
if( user_is_special() ) {
return 'special@example.com';
}
return $value;
}, 10, 2 );
解説: 特定の条件 (この場合、user_is_special()
がtrue
を返す場合) に基づいて、メール通知の送信先を変えるサンプルコードです。
サンプルコード 2
add_filter( 'ninja_forms_check_setting_form_title', function( $value, $setting_id ) {
return 'New Custom Title - ' . $value;
}, 10, 2 );
解説: フォームのタイトルにカスタムテキストを追加するサンプルコードです。
サンプルコード 3
add_filter( 'ninja_forms_check_setting_is_enabled', function( $value, $setting_id ) {
return is_user_logged_in(); // ユーザーがログインしている場合のみ有効にする
}, 10, 2 );
解説: 設定値がログイン中のユーザーに基づいて有効かどうかを決定するサンプルコードです。
サンプルコード 4
add_filter( 'ninja_forms_check_setting_submission_limit', function( $value, $setting_id ) {
return 10; // 最大10件の送信制限を設定
}, 10, 2 );
解説: フォームの送信制限を10件に固定するサンプルコードです。
サンプルコード 5
add_filter( 'ninja_forms_check_setting_css_class', function( $value, $setting_id ) {
if( isset($_GET['dark_mode']) ) {
return 'dark-mode'; // ダークモードのクラスを設定
}
return $value;
}, 10, 2 );
解説: リクエストパラメータに応じてCSSクラスを変更するサンプルコードです。
それぞれのサンプルは、フィルタの機能を活用して特定の条件や要件に応じてNinja Formsの設定を変更する方法を示しています。