予約フォームの送信不具合について

2024/07/04

Contact Form7の最新バージョン(Ver5.9)にアップデートすると、予約フォームの日付欄と指名キャストのプルダウンで値を選択すると、「Undefined value was submitted through this field.」というエラーが発生することを確認しております。

【エラーの症状】

指名キャストと、予約日時を選択した際に、もし、このような状態になる場合は、以下の方法で修正をお願いします。

1.子テーマのfunctions.phpをダウンロードして、最下部に、以下のコードを追記してください。

// カスタムバリデーションルールの追加
add_action( 'wpcf7_init', 'custom_change_select_validation_rule', 99 );
function custom_change_select_validation_rule() {
remove_action( 'wpcf7_swv_create_schema', 'wpcf7_swv_add_select_enum_rules', 20, 2 );
add_action( 'wpcf7_swv_create_schema', function( $schema, $contact_form ) {
$valid_values = range(0, 24); // 例として0時から24時までを有効値とします
$schema->add_rule(
wpcf7_swv_create_rule( 'enum', array(
'field' => 'select_reserve_hour', // 対象のフィールドID
'accept' => $valid_values,
'error' => $contact_form->filter_message(
__( 'Undefined value was submitted through this field.', 'your-text-domain' )
),
) )
);
}, 30, 2 );
}

2.FTPソフト等を使えない場合は、

・管理画面の[外観]-[テーマファイルエディタ]を開きます。
・選択するテーマのプルダウンから子テーマを選択します。
・functions.phpをクリックします。
・最下部に、前述したコードを追記してください。