Resumen de IA
Introducción
¿Te interesa saber cómo restringir cupones según un importe específico? Este tutorial te guiará a través del proceso de utilización de una acción PHP para evitar que los cupones se procesen cuando su valor sea inferior a un umbral establecido.
Por defecto, tienes la opción de crear cupones en formato de porcentaje o de tarifa fija para cualquier importe. Sin embargo, ¿qué pasa si introduces por error .75 en lugar de 75%? Este pequeño fragmento de código puede ayudarte a evitar este tipo de errores en el envío de formularios, y te guiaremos a través del proceso en este tutorial.
Para obtener más información sobre el uso de cupones, revisa esta útil guía.
Creación del cupón
Para empezar, creemos un cupón. En este tutorial, crearemos un cupón con una tarifa fija de .75, aunque nuestra intención sea establecerlo en 75%. Esto es solo a efectos de demostración y para resaltar cómo el fragmento que añadiremos puede ayudar con la validación.
Para crear un nuevo cupón, navega a WPForms » Pagos » Cupones y haz clic en Añadir nuevo cupón. Dentro del campo Nombre, dale a tu cupón un nombre que tenga sentido para ti a efectos de organización.
A continuación, en el campo Código, puedes introducir manualmente un código de cupón o hacer clic en el botón Generar código para que WPForms cree este código por ti. En el campo Importe, introduce .75 y en el menú desplegable, asegúrate de seleccionar el símbolo de la moneda.
Al seleccionar el símbolo de la moneda, estás utilizando el descuento de tarifa fija en lugar de un porcentaje.
Para este tutorial, no vamos a establecer una fecha o hora, así que nos desplazaremos hacia abajo, seleccionaremos los formularios para los que queremos usar este cupón y luego haremos clic en Guardar cupón para guardar tus cambios.

Creación del formulario
Ahora que el cupón está configurado, es hora de crear el formulario. Para cualquier ayuda sobre cómo crear formularios, por favor, echa un vistazo a esta guía paso a paso.

Una vez que hayamos añadido el campo Cupón, notarás que el cupón ya está asignado.

Añadir el fragmento
Ahora es el momento de añadir el fragmento. Si necesitas ayuda sobre cómo y dónde añadir fragmentos, por favor, revisa este tutorial.
/*
* Do not allow to submit coupons lower than 1.00.
*
* @link https://wpforms.com/developers/how-to-restrict-coupons-by-amount/
*/
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 );
Y eso es todo lo que necesitas. Cuando un visitante utilice ese cupón, no podrá enviar el formulario.

Relacionado
Referencia de acción: wpforms_process_validate_payment-coupon