概要
wpcf7_display_message
フィルタは、WordPress用プラグイン「Contact Form 7」で送信結果のメッセージを表示する際に、そのメッセージの出力を加工するために使用されます。このフィルタを利用することで、ユーザーへのフィードバックメッセージをカスタマイズしたり、特定の条件に基づいてメッセージ内容を変更したりできます。
このフィルタは、以下のような機能を実装する際によく使われます。
- メッセージの内容を翻訳する
- メッセージに追加情報を付加する
- メッセージの HTML タグを変更する
- 特定の条件に基づいてメッセージの表現を変える
- エラーメッセージをカスタマイズする
- 成功メッセージのフォーマットを変える
構文
apply_filters( 'wpcf7_display_message', $message, $status, $submission );
パラメータ
$message
(string): デフォルトのメッセージ内容。$status
(string): メッセージの状態(例:’mail_sent’ や ‘validation_error’)。$submission
(object): フォームのデータを含むオブジェクト。
戻り値
- (string): フィルタリング後のメッセージ。
使用可能なバージョン
- Contact Form 7: バージョン 4.0 以降
- WordPress: バージョン 4.0 以降
この関数のアクションでの使用可能性
アクション | 使用可能性 |
---|---|
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( 'wpcf7_display_message', 'custom_display_message', 10, 3 );
function custom_display_message( $message, $status, $submission ) {
if ( $status === 'mail_sent' ) {
return 'メッセージが送信されました!';
}
return $message;
}
このサンプルコードは、メール送信が成功した場合に表示するメッセージを日本語に変更しています。引用元: https://contactform7.com/
サンプル2: メッセージに追加情報を付加する
add_filter( 'wpcf7_display_message', 'add_more_info_to_message', 10, 3 );
function add_more_info_to_message( $message, $status, $submission ) {
if ( $status === 'mail_sent' ) {
$message .= ' 鍵情報を確認してください。';
}
return $message;
}
このコードは、送信成功のメッセージに追加情報を付け加えています。引用元: https://contactform7.com/
サンプル3: メッセージのスタイルを変更する
add_filter( 'wpcf7_display_message', 'change_message_style', 10, 3 );
function change_message_style( $message, $status, $submission ) {
if ( $status === 'validation_error' ) {
return '<div class="error-message">' . $message . '</div>';
}
return $message;
}
このサンプルでは、バリデーションエラーのメッセージにカスタムクラスを追加してスタイルを変更しています。引用元: https://contactform7.com/
サンプル4: エラーメッセージをカスタマイズする
add_filter( 'wpcf7_display_message', 'custom_error_message', 10, 3 );
function custom_error_message( $message, $status, $submission ) {
if ( $status === 'validation_error' ) {
return '入力に誤りがあります。もう一度ご確認ください。';
}
return $message;
}
このコードは、バリデーションエラーのメッセージをカスタマイズしたものです。引用元: https://contactform7.com/
サンプル5: 成功メッセージのフォーマットを変える
add_filter( 'wpcf7_display_message', 'format_success_message', 10, 3 );
function format_success_message( $message, $status, $submission ) {
if ( $status === 'mail_sent' ) {
return '<p class="success">' . $message . '</p>';
}
return $message;
}
このサンプルでは、送信成功メッセージを特定のHTMLタグで囲んでフォーマットしています。引用元: https://contactform7.com/