Résumé de l'IA
Description
Le wpforms_process_validate_payment-coupon déclenche la validation de l'élément Coupon lorsque le formulaire est soumis.
Paramètres
- $field_id
- (int) ID du champ.
- $field_submit
- (array) Valeur originale brute/non nettoyée soumise pour le champ.
- $form_data
- (tableau) Paramètres/données de formulaire traités, préparés pour être utilisés ultérieurement.
Source
wpforms/includes/class-process.php
Plus d'informations
Le wpforms_process_validate_payment-coupon est appliquée à l'action Coupon champ de formulaire pour vérifier le montant du coupon, par exemple s'il est supérieur à un montant particulier défini dans la fonction.
Exemples
Dans cet exemple, nous empêchons toute soumission de formulaire si le montant forfaitaire du coupon est inférieur à 1,00.
/*
* Do not allow to submit coupons lower than 1.00.
*
* @link https://wpforms.com/developers/wpforms_process_validate_payment-coupon/
*
* @param int $field_id Field ID.
* @param array $field_submit Unsanitized field value submitted for the field.
* @param array $form_data Form data and settings.
*/
function wpf_discard_low_coupons( $field_id, $field_submit, $form_data ) {
$coupon = wpforms_coupons()->get( 'repository' )->get_coupon_by_code( $field_submit );
if ( $coupon === null ) {
return;
}
$currency = wpforms_get_currency();
if ( $coupon->get_discount_type() === 'flat' && (float) $coupon->get_discount_amount() <= 1.00 ) {
wpforms()->get( 'process' )->errors[ $form_data[ 'id' ] ][ $field_id ] = sprintf( /* translators: %s - Currency code name. */
esc_html__( 'Coupon amount is less that 1.00 %s. Please, use another one.', 'your-translation-domain' ),
$currency
);
}
}
add_action( "wpforms_process_validate_payment-coupon", 'wpf_discard_low_coupons', 10, 3 );
En rapport
Référence de l'article : Comment restreindre les coupons par montant