概要
wpcf7_constant_contact_submit
フィルタは、Contact Form 7 プラグインのフォームデータが Constant Contact に送信される際の処理をカスタマイズするために使用されます。これにより、ユーザーがフォームに入力したデータを Constant Contact に適切に送信したり、特定の条件に基づいてデータを変更したりすることができます。主に以下のような機能を実現するためによく使われます。
- フォームデータの前処理や変換
- 追加のフィールド情報の送信
- 特定の条件に基づくデータの送信制御
- エラーメッセージのカスタマイズ
- 特定のユーザー属性に基づくデータの選別
- データ送信後のログ記録
構文
add_filter('wpcf7_constant_contact_submit', 'custom_constant_contact_submission', 10, 2);
パラメータ
$contact_form
: Contact Form 7 のインスタンス$data
: Constant Contact に送信されるデータの配列
戻り値
- カスタマイズされたデータの配列
対応するプラグインのバージョン
- Contact Form 7 バージョン 5.0 以降
対応するワードプレスのバージョン
- WordPress バージョン 5.0 以降
サンプルコード
サンプルコード 1
add_filter('wpcf7_constant_contact_submit', 'modify_contact_data', 10, 2);
function modify_contact_data($contact_form, $data) {
// 名前を全て大文字に変換
$data['name'] = strtoupper($data['name']);
return $data;
}
説明: このコードは、Constant Contact に送信される際に、名前フィールドの値を大文字に変換します。
サンプルコード 2
add_filter('wpcf7_constant_contact_submit', 'add_custom_field', 10, 2);
function add_custom_field($contact_form, $data) {
// 特定のカスタムフィールドを追加
$data['custom_field'] = '特別な値';
return $data;
}
説明: このコードは、Constant Contact に送信するデータに特定のカスタムフィールドを追加します。
サンプルコード 3
add_filter('wpcf7_constant_contact_submit', 'conditional_submission', 10, 2);
function conditional_submission($contact_form, $data) {
// 特定の条件を満たさない場合はデータ送信を拒否
if ($data['email'] == 'test@example.com') {
return false; // データを送信しない
}
return $data;
}
説明: このコードは、特定のメールアドレスに基づいてデータの送信を拒否します。
サンプルコード 4
add_filter('wpcf7_constant_contact_submit', 'custom_error_message', 10, 2);
function custom_error_message($contact_form, $data) {
// エラーメッセージをカスタマイズ
if (empty($data['email'])) {
add_filter('wpcf7_validation_failed', 'Your email address is required.');
}
return $data;
}
説明: このコードは、メールアドレスが空の場合にカスタムエラーメッセージを設定します。
サンプルコード 5
add_filter('wpcf7_constant_contact_submit', 'log_submission_data', 10, 2);
function log_submission_data($contact_form, $data) {
// 送信データをログに記録
error_log(print_r($data, true));
return $data;
}
説明: このコードは、Constant Contact に送信されるデータをエラーログに記録します。
この関数のアクションでの使用可能性
アクション | 使用可否 |
---|---|
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 |