mwform_validation_mw-wp-form-xxx

任意の入力フィールドへのバリデーションを追加できるフックです。複雑なバリデーションルールを設定したいときなどに使うと便利です。フック名「mwform_validation_mw-wp-form-xxx」の xxx の部分はフックを適用したいフォームの作成画面に表示されているフォーム識別子の key になります([mwform_formkey key=”3811″] の場合は 3811)。

フックに指定された関数内で「$Validation::set_ruleメソッド」を使って任意の入力フィールドにバリデーションルールを追加していきます。$Validation::set_rule では規定のバリデーションルールを設定することができます。バリデーションルールの詳しい情報については「バリデーションルール一覧」をご覧ください。

サンプルコード

/**
 * my_validation_rule
 * @param object $Validation
 * @param array $data
 * @param MW_WP_Form_Data $Data
 * $Validation::set_ruleの引数は name属性値, バリデーション名, オプション
 */
function my_validation_rule( $Validation, $data, $Data ) {
    $Validation->set_rule( 'お名前', 'noEmpty' );
    $Validation->set_rule( '電話番号', 'tel', array( 'message' => 'それは電話番号じゃなかばい' ) );
    $Validation->set_rule( '年齢', 'betweenn', array( 'min' => 18, 'max' => 60 ) );
    return $Validation;
}
add_filter( 'mwform_validation_mw-wp-form-xxx', 'my_validation_rule', 10, 3 );