支払いフィールドのメール通知で数量ゼロの項目を非表示にする

はじめに

ドロップダウンアイテムまたは単一アイテムの支払いフィールドを使用しているとき、WPFormsの通知メールから数量ゼロのアイテムを非表示にしたいですか?数量オプションを有効にしてこれらの支払いフィールドを使用すると、デフォルトではWPFormsは数量に関係なく、選択されたすべてのアイテムを通知で表示します。

このチュートリアルでは、数量がゼロのアイテムを通知メールから非表示にする方法をご紹介します。

スニペットの追加

支払いフィールドの通知から数量ゼロの項目を非表示にするには、サイトにカスタムスニペットを追加する必要があります。スニペットをサイトに追加する際にヘルプが必要な場合は、WPForms用のPHPまたはJavaScriptを追加するチュートリアルをご覧ください。

/**
 * Hiding Zero Quantity Items in Email Notifications for Payment Fields
 *
 * @link https://wpforms.com/developers/how-to-hide-zero-quantity-items-in-dropdown-payment-field-notifications
 */
add_filter('wpforms_entry_email_data', function ($fields, $entry, $form_data) {
    foreach ($fields as $field_id => $field) {
        // Adjust to handle 'payment-single', 'payment-select', or any other types
        if (
            isset($form_data['fields'][$field_id]['type']) && 
            in_array($form_data['fields'][$field_id]['type'], ['payment-select', 'payment-single'])
        ) {
            $quantity = isset($field['quantity']) ? (int) $field['quantity'] : 0;

            if ($quantity == 0) {
                unset($fields[$field_id]);
            }
        }
    }

    return $fields;
}, 10, 3); 

このスニペットは、フォーム通知の各支払いフィールドをチェックし、数量の値を取得し、数量がゼロのフィールドを削除します。

注: このスニペットは、数量が有効になっているドロップダウンアイテムと単一アイテムの両方の支払いフィールドで動作します。

これで完了です!これで支払い欄の通知から数量ゼロの商品を隠すことができました。

通知メールをさらにカスタマイズしたいですか?通知メールの画像サイズを大きくする記事をご覧ください。