説明

について wpforms_entry_email_atts フィルタを使うと、通知を送信する前にプログラムでメール通知の属性を変更することができます。これは、フォームビルダを通して設定することが現実的でない複雑な通知ロジックを管理するときに特に便利です。

パラメータ

Eメール
(配列)件名、メッセージ、その他の設定を含む電子メール通知属性。
フィールド
(配列)フォームフィールドのデータと値。
エントリー
(配列)エントリーデータとメタデータ。
フォームデータ
(配列)処理済みのフォーム設定/データ。
通知_id
(配列)現在処理中の通知のID。

このフィルタは、メール通知属性を送信前にプログラムで変更することを可能にします。これは、国別通知や複数の受信者シナリオのような、フォームフィールド値に基づいた複雑な条件付き通知ロジックを扱うときに特に有用です。

メールの件名は $email['subject'].これにより、特定の要件に基づいて件名行をプログラムでカスタマイズできます。

/**
 * Customize email notification attributes.
 *
 * @link https://wpforms.com/developers/wpforms_entry_email_atts
 *
 * @param array $email           Email notification settings.
 * @param array $fields          Form fields data.
 * @param array $entry           Entry data.
 * @param array $form_data       Form data and settings.
 * @param int   $notification_id Notification ID.
 * 
 * @return array
 */
function wpf_custom_email_notification( $email, $fields, $entry, $form_data, $notification_id ) {
    // Add custom logic here to modify email attributes based on form fields
    // Example: Modify subject, recipients, sender info based on country selection
    
    return $email;
}
add_filter( 'wpforms_entry_email_atts', 'wpf_custom_email_notification', 10, 5 );