WooCommerce · Arhitectură WooCommerce
WooCommerce: adăugarea câmpurilor personalizate în Checkout Blocks
Câmpurile adăugate prin hook-uri clasice dispar în checkout cu blocuri. Calea oficială este API-ul pentru câmpuri suplimentare.
- Additional Checkout Fields API
- Text, select, checkbox
- Locații: contact, adresă, comandă
- Date salvate în comandă
- Nu hook-uri clasice
Răspuns în aceeași zi lucrătoare Ofertă fixă Fără parole
Răspuns rapid
Checkout-ul cu blocuri nu execută hook-urile clasice de câmpuri; API-ul oficial este woocommerce_register_additional_checkout_field, cu tipuri precum text, select și checkbox și locații precum contact, adresă și comandă, descris în documentația dezvoltatorilor Cart/Checkout blocks. Câmpurile se înregistrează în PHP, se validează server-side și valorile se salvează în comandă. Documentația care compară checkout-ul cu blocuri cu cel clasic spune că extensiile care adaugă câmpuri prin hook-uri cer de obicei lucru de integrare.
Ce ai nevoie
- Lista câmpurilor și locațiile lor
- Versiune WooCommerce compatibilă
- Un mediu de test
- Cunoștințe PHP
Pașii, pe rând
- 1Alege locațiaContact (informații de contact), adresă (facturare/livrare) sau comandă (note, preferințe). Locația determină unde apare și cum se salvează.
- 2Alege tipul câmpuluiText, select sau checkbox, cu eticheta, obligatoriu sau nu, și opțiunile.
- 3Înregistrează câmpulwoocommerce_register_additional_checkout_field, la inițializarea WooCommerce; fragmentul de mai jos arată structura.
- 4ValideazăValidare server-side (de exemplu format CUI sau lungime); nu te baza pe JavaScript.
- 5Salvează și afișează în comandăValorile se păstrează cu comanda; verifică-le în administrare, emailuri și exporturi.
- 6Testează pe telefonCâmpurile trebuie să fie ușor de completat și să nu rupă fluxul.
- 7Păstrează compatibilitateaDacă ai nevoie și de checkout clasic, menține o implementare separată pentru acela.
Câmp text în secțiunea de contact (schelet)
phpadd_action('woocommerce_init', function () {
if (!function_exists('woocommerce_register_additional_checkout_field')) return;
woocommerce_register_additional_checkout_field([
'id' => 'magazinul-meu/cui',
'label' => 'CUI (opțional)',
'location' => 'contact',
'type' => 'text',
'required' => false,
]);
});Fragmentele de cod sunt scheleturi: le adaptezi la magazinul tău și le testezi întâi pe un mediu de test (staging). Structura exactă a argumentelor și a locațiilor este cea din documentația API-ului; verifică-o în versiunea ta WooCommerce. Pentru validare și sanitizare adaugă cârligele descrise acolo.
Verifică în documentația dezvoltatorilor numele exacte ale argumentelor pentru versiunea ta; API-ul este mai nou decât hook-urile clasice și poate evolua.
Mai multe detalii
Cauze frecvente și greșeli de evitatDacă pașii de mai sus nu au rezolvat problema
Câmpul nu apare în checkout
De ce: Checkout-ul folosește blocuri, dar câmpul e adăugat prin hook clasic.
Ce faci: Înregistrează-l cu API-ul pentru blocuri.
Valoarea nu se salvează
De ce: Locația sau ID-ul nu sunt corecte.
Ce faci: Verifică înregistrarea și locația.
Câmpul apare în checkout clasic, dar nu în blocuri
De ce: Cele două sisteme sunt separate.
Ce faci: Implementează ambele dacă folosești ambele.
Întrebări frecvente4 răspunsuri
Mai funcționează woocommerce_checkout_fields?
Hook-urile clasice nu se aplică checkout-ului cu blocuri; folosește API-ul pentru câmpuri suplimentare.
Ce tipuri pot adăuga?
Text, select și checkbox, în locațiile contact, adresă și comandă.
Pot valida câmpul?
Da, server-side, conform documentației API-ului.
Mă ajutați să migrăm câmpurile?
Da. Cere ofertă fixă.
Subiecte acoperite pe această pagină
- câmpuri personalizate Checkout Blocks
- woocommerce_register_additional_checkout_field
- Additional Checkout Fields
- câmp CUI checkout blocuri
- checkout cu blocuri câmpuri
Ghiduri apropiate
- WooCommerce: activarea HPOS fără pierderea comenzilor
- WooCommerce: repararea extensiilor incompatibile cu HPOS
- WooCommerce: migrarea checkout-ului clasic la Checkout Blocks
- Actualizarea șabloanelor WooCommerce suprascrise de temă
- WooCommerce: repararea sarcinilor blocate în Action Scheduler
- WooCommerce: reducerea solicitărilor cart fragments
- WooCommerce: migrarea la Checkout Blocks
- WooCommerce: salvarea câmpurilor personalizate în comandă
- Toate ghidurile
Surse și verificare
- Additional Checkout Fields API (documentația dezvoltatorilor)
- Suport pentru Cart și Checkout blocks (documentație WooCommerce)
Verificat pe 5 noiembrie 2026. Denumirile din setări și pașii pot diferi între versiuni.
