ご注意!

この記事には PHP コードが含まれており、開発者を対象としています。このコードは便宜上提供していますが、コードのカスタマイズやサードパーティの開発についてはサポートを提供していません。

追加のガイダンスについては、WPBeginner の カスタムコードの追加方法に関するチュートリアル を参照してください。

閉じる

説明

wpforms_entry_email_data フィルターは、フォーム通知メールが送信される前にエントリーフィールドに適用されます。

パラメーター

$fields
(array) サニタイズされたエントリーフィールドの値/プロパティ。
$entry
(array) 元の $_POST グローバル。
$form_data
(配列)  後で使用するために処理および準備されたフォーム設定/データ。

ソース

wpforms/includes/class-process.php

詳細情報

wpforms_entry_entry_email_data フィルターは、フォーム通知メールの作成と送信に使用されるフォームフィールド情報に適用されます。

このフィルターを使用して、通知メール内の送信済みフォームフィールドの詳細を変更できます。

890 から対象のフォーム ID に変更することを忘れないでください。

/**
 * Filter applies to entry fields before a form notification email is sent.
 *
 * @link  https://wpforms.com/developers/wpforms_entry_email_data/
 *
 * @param  array  $fields     Sanitized entry field values/properties.
 * @param  array  $entry      Original $_POST global.
 * @param  array  $form_data  Form data and settings.
 *
 * @return array 
 */

function wpf_dev_entry_email_data( $fields, $entry, $form_data ) {
     
    // Only run on my form with ID = 890
    if ( absint( $form_data[ 'id']  ) !== 890 ) {
    return $fields;
    }
     
    foreach ( $fields as &$field ) {
 
        if ( empty( $field[ 'value_choice' ] ) ) {
            continue;
        }
         
        // Default is a dash -, change here to what you need.
        $delimiter = ' : ';
        $field[ 'value' ] = $field[ 'value_choice' ] . $delimiter . wpforms_format_amount( $field[ 'amount_raw' ], true );
    }
     
    return $fields;
     
}
add_filter( 'wpforms_entry_email_data' , 'wpf_dev_entry_email_data', 10, 3  );

フォームIDとフィールドIDの検索方法についてサポートが必要な場合は、こちらのチュートリアルをご覧ください

参考記事

メール通知内の支払い区切り文字を変更する方法