casilla de verificación personalizada de la página de pago de Woocommerce

2

iv creamos casillas de verificación personalizadas en la página de pago a través del archivo functions.php, pero me gustaría marcar una de ellas, ¿cómo hago esto?

woocommerce_form_field( 'my_checkbox1', array( 
'type' => 'checkbox', 
'class' => array('input-checkbox'), 
'label' => __('Standard Shipping (2–7 Days, FREE!) <span>Most items are shipped FREE OF CHARGE within Thailand.</span>'), 
'required' => false, 
'value'  => true, 
), $checkout->get_value( 'my_checkbox1' ));
    
pregunta dan 01.08.2013 - 06:09

2 respuestas

3

En las casillas de verificación de WooCommerce siempre tienen un valor de '1'.

Así que no necesitas pasar 'value' => true : no hace nada.

Para configurar la casilla de verificación marcada o no, WooCommerce utiliza la

función marcada de WP donde se compara 1 (entero) con el valor que pasar como tercer parámetro en woocommerce_form_field .

Pase 1 como predeterminado y su casilla de verificación se marcará como predeterminada.

$checked = $checkout->get_value( 'my_checkbox1' ) ? $checkout->get_value( 'my_checkbox1' ) : 1;

woocommerce_form_field( 'my_checkbox1', array( 
  'type' => 'checkbox', 
  'class' => array('input-checkbox'), 
  'label' => __('Standard Shipping (2–7 Days, FREE!) <span>Most items are shipped FREE OF CHARGE within Thailand.</span>'), 
  'required' => false,
), $checked );
    
respondido por el gmazzap 01.08.2013 - 06:37
2

No creo que la respuesta de G.M. sea correcta.

Como él aludió, no creo que haga ninguna diferencia en el valor que especifique para el tercer parámetro. (Por cierto, el elemento 'valor' en la matriz args ni siquiera existe; consulte enlace )

Lo que debe hacer es establecer el valor 'predeterminado' en la matriz args en 1. Por ejemplo,

woocommerce_form_field( 'my_checkbox1', array( 
    'type' => 'checkbox', 
    'class' => array('input-checkbox'), 
    'label' => __('Standard Shipping (2–7 Days, FREE!) <span>Most items are shipped FREE OF CHARGE within Thailand.</span>'), 
    'required' => false, 
    'value'  => true, 
    'default' => 1 //This will pre-select the checkbox
), 'whatever');

Saludos, James

    
respondido por el ban-geoengineering 03.04.2014 - 19:28

Lea otras preguntas en las etiquetas