Caseta de selectare personalizată bifată în pagina de finalizare comandă WooCommerce

1 aug. 2013, 07:09:16
Vizualizări: 29.4K
Voturi: 4

Am creat casete de selectare personalizate în pagina de finalizare comandă prin fișierul functions.php, dar aș dori ca una dintre ele să fie bifată implicit. Cum pot face acest lucru?

woocommerce_form_field( 'my_checkbox1', array( 
'type' => 'checkbox', 
'class' => array('input-checkbox'), 
'label' => __('Livrare Standard (2-7 Zile, GRATUIT!) <span>Majoritatea produselor sunt livrate GRATUIT în Thailand.</span>'), 
'required' => false, 
'value'  => true, 
'default' => 1, // Adaugă această linie pentru a bifa caseta implicit
), $checkout->get_value( 'my_checkbox1' ));
0
Toate răspunsurile la întrebare 2
3

Nu cred că răspunsul lui G. M. este corect.

După cum a sugerat și el, nu cred că va face vreo diferență ce valoare specifici pentru al treilea parametru. (Apropo, elementul 'value' în array-ul args nici măcar nu există - vezi http://docs.woothemes.com/wc-apidocs/source-function-woocommerce_form_field.html#1568-1787 )

Ceea ce trebuie să faci este să setezi valoarea 'default' în array-ul args la 1. De exemplu,

woocommerce_form_field( 'my_checkbox1', array( 
    'type' => 'checkbox', 
    'class' => array('input-checkbox'), 
    'label' => __('Transport Standard (2–7 Zile, GRATUIT!) <span>Majoritatea articolelor sunt expediate GRATUIT în Thailandia.</span>'), 
    'required' => false, 
    'value'  => true, 
    'default' => 1 //Aceasta va pre-selecta checkbox-ul
), 'whatever');

Noroc, James

3 apr. 2014 20:28:05
Comentarii

acest lucru este corect și funcționează. răspunsul anterior nu l-am testat pentru că părea puțin dubios.

Eolis Eolis
23 feb. 2018 01:10:49

Funcționează perfect. mulțumesc, prietene

Faisal Ramzan Faisal Ramzan
16 feb. 2021 11:17:50

Cu plăcere. Mă bucur că te-a ajutat! :-)

Boycott A.I. Boycott A.I.
19 feb. 2021 17:42:59
2

În WooCommerce, casetele de bifare au întotdeauna valoarea '1'.

Deci nu este necesar să treci 'value' => true: nu are niciun efect.

Pentru a seta dacă o casetă de bifare este bifată sau nu, WooCommerce utilizează funcția WP checked unde 1 (întreg) este comparat cu valoarea pe care o transmiți ca al treilea parametru în woocommerce_form_field.

Transmite 1 ca valoare implicită și caseta ta de bifare va fi bifată implicit.

$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' => __('Livrare Standard (2–7 Zile, GRATUIT!) <span>Majoritatea articolelor sunt expediate GRATUIT în Thailanda.</span>'), 
  'required' => false,
), $checked );
1 aug. 2013 07:37:45
Comentarii

Ai cumva idee cum să adaugi butoane radio pe pagina de finalizare comandă?

dan dan
1 aug. 2013 07:50:52

Nu poți... Adaugă casete de bifat care sunt întotdeauna bifate folosind codul de mai sus. Apoi adaugă niște JavaScript pentru a preveni ca cineva să poată bifa mai mult de o casetă cu același nume.

gmazzap gmazzap
1 aug. 2013 08:16:42