acf_add_validation_error()


関数WordPressacf_add_validation_error()は、Advanced Custom Fields(ACF)プラグインを使用する際にカスタムバリデーションエラーを追加するためのものです。この関数を使用すると、フォームフィールドにエラーを関連付け、ユーザーに入力ミスをわかりやすく示すことができます。

シンタックス

acf_add_validation_error( string $selector, string $message );

引数の説明:

  • $selector (string) — フィールドまたはラッパーのCSSセレクターを指定します。
  • $message (string) — 表示するエラーメッセージを指定します。

例1: フィールドにエラーを追加

特定のフィールドにバリデーションエラーを追加する基本的な例です。

add_action('acf/validate_value/name=my_field', function( $valid, $value, $field, $input ){ if( strlen($value) < 5 ){ acf_add_validation_error( '[name="my_field"]', '5文字以上で入力してください。' ); return false; } return $valid; }, 10, 4 );

例2: カスタムラッパーにエラーを追加

特定のラッパークラスにエラーを表示する例です。

add_action('acf/validate_save_post', function(){ acf_add_validation_error( '.custom-wrapper', 'このセクションの入力を確認してください。' ); });

例3: 複数フィールドのバリデーション

複数のフィールドに一度にエラーを設定する方法です。

add_action('acf/validate_save_post', function(){ acf_add_validation_error( '[name="first_field"]', '必須です。' ); acf_add_validation_error( '[name="second_field"]', '値が無効です。' ); });

例4: 条件付きバリデーション

特定の条件に基づいてエラーを設定する方法です。

add_action('acf/validate_value/name=conditional_field', function( $valid, $value ){ if( $value == '特定の値' ){ acf_add_validation_error( '[name="conditional_field"]', 'この値は使用できません。' ); return false; } return $valid; }, 10, 2 );

例5: 全体的なフォームエラー

フォーム全体の入力に対してエラーを設定する例です。

add_action('acf/validate_save_post', function(){ acf_add_validation_error( '', 'フォーム全体を確認してください。' ); });

注意事項

  • この関数はACFのバリデーションフック内で使用する必要があります。
  • $selectorには有効なCSSセレクターを指定してください。

関連機能: