Ya vimos muchos ejemplos, por ejemplo, ocultar campos de pago si un producto es virtual o ocultar campos de pago si se verifica manualmente una casilla de verificación… Pero esta vez quiero ocultar un campo dinámicamente, automáticamente, en función de si otro campo de pago está vacío o tiene un valor específico.
En este ejemplo, demostraré cómo ocultar el «teléfono de facturación» si la «empresa de facturación» está vacía o no se ingresa información. Por supuesto, también debe deshabilitar el atributo obligatorio para el teléfono de facturación desde la configuración de personalizador; de lo contrario, la validación de pago fallará. Puede leer este fragmento a cualquier otro combo de campo de pago; simplemente identifique las ID de entrada y cambie jQuery en consecuencia. ¡Disfrutar!
Php Snippet: alterne un campo de pago en función de si otro campo está vacío
/** * @snippet Hide/Show Field @ WooCommerce Checkout * @how-to businessbloomer.com/woocommerce-customization * @author Rodolfo Melogli, Business Bloomer * @compatible WooCommerce 5 * @community https://businessbloomer.com/club/ */ add_action( 'woocommerce_after_checkout_form', 'bbloomer_conditionally_hide_show_checkout_field', 9999 ); function bbloomer_conditionally_hide_show_checkout_field() { wc_enqueue_js( " $('#billing_company').keyup(function() { if ($(this).val().length == 0) { $('#order_comments_field').hide(); } else { $('#order_comments_field').show(); } }); " ); }