WooCommerce · Operațiuni comenzi
WooCommerce: crearea statusurilor personalizate pentru comenzi
Fluxul tău are pași pe care statusurile standard nu îi acoperă: „în pregătire”, „așteaptă client”, „gata de ridicare”. Le poți adăuga cu puțin cod sau cu o extensie.
- Filtrul wc_order_statuses
- register_post_status
- Order Status Manager
- Emailuri pe status
- Atenție la stocul și rapoartele
Răspuns în aceeași zi lucrătoare Ofertă fixă Fără parole
Răspuns rapid
Statusurile comenzilor vin din funcția wc_get_order_statuses, filtrabilă prin wc_order_statuses (verificat în codul WooCommerce), iar statusurile se înregistrează cu register_post_status în WordPress. Adaugi un status cu prefixul wc- în ambele locuri. Alternativ, „Order Status Manager” (SkyVerge, 49 $ pe an la data verificării) permite statusuri personalizate, tranziții („next statuses”), emailuri pe status și acțiuni în masă; recenziile semnalează însă probleme după unele actualizări, deci testează pe staging.
Ce ai nevoie
- Lista statusurilor și tranzițiile dorite
- Cine schimbă statusul și când
- Emailurile asociate
- Un mediu de test
Pașii, pe rând
- 1Proiectează fluxulStatusurile standard (Pending, Processing, On hold, Completed, Cancelled, Refunded, Failed) acoperă multe cazuri. Adaugă unele noi doar dacă schimbă ceva operațional.
- 2Alege metodaCod propriu pentru 1–3 statusuri simple; extensie dacă vrei tranziții controlate, emailuri și interfață de administrare.
- 3Înregistrează statusulregister_post_status('wc-in-pregatire', …) la acțiunea init, cu eticheta afișată în admin.
- 4Adaugă statusul în listăPrin filtrul wc_order_statuses, ca să apară în meniul de status al comenzii.
- 5Decide efectul asupra stocului și plățiiUn status personalizat nu schimbă singur stocul; stocul se reduce la statusuri precum processing, on-hold, completed. Hotărăște cum trebuie să se comporte noul status.
- 6Asociază emailuriDacă vrei un email la noul status, trebuie un declanșator (acțiune la schimbarea statusului) sau extensie.
- 7Testează rapoarte și integrăriVerifică dacă facturarea, curierul și rapoartele recunosc noul status.
Status „În pregătire” (schelet)
phpadd_action('init', function () {
register_post_status('wc-in-pregatire', [
'label' => 'În pregătire',
'public' => true,
'show_in_admin_status_list' => true,
'show_in_admin_all_list' => true,
'exclude_from_search' => false,
'label_count' => _n_noop('În pregătire <span class="count">(%s)</span>', 'În pregătire <span class="count">(%s)</span>'),
]);
});
add_filter('wc_order_statuses', function ($statuses) {
$statuses['wc-in-pregatire'] = 'În pregătire';
return $statuses;
});Fragmentele de cod sunt scheleturi: le adaptezi la magazinul tău și le testezi întâi pe un mediu de test (staging). Cheia statusului începe cu wc-. Numele nu trebuie să depășească lungimea permisă de bază de date pentru statusuri. Verifică stocarea comenzilor (HPOS) și rapoartele după adăugare.
Informațiile despre extensii sunt de pe paginile lor oficiale la data verificării; confirmă-le înainte de achiziție. Recenziile Order Status Manager menționează schimbări neașteptate de status și un caz de numere de comandă noi la trecerea pe status personalizat; sunt raportări ale utilizatorilor, neverificate, dar justifică testarea pe staging. Pagina nu menționează HPOS.
Mai multe detalii
Cauze frecvente și greșeli de evitatDacă pașii de mai sus nu au rezolvat problema
Statusul nu apare în listă
De ce: Nu e adăugat prin wc_order_statuses sau nu are prefixul wc-.
Ce faci: Verifică prefixul și filtrul.
Integrările nu recunosc statusul
De ce: Facturarea/curierul filtrează doar statusuri standard.
Ce faci: Configurează integrările pentru noul status.
Stocul se comportă neașteptat
De ce: Noul status nu declanșează reducerea.
Ce faci: Mapează statusul la comportamentul dorit.
Întrebări frecvente4 răspunsuri
Pot adăuga statusuri fără extensie?
Da, cu register_post_status și filtrul wc_order_statuses.
Ce oferă o extensie în plus?
Tranziții controlate, emailuri pe status și acțiuni în masă, conform paginii Order Status Manager.
Afectează stocul?
Stocul se reduce la statusuri precum processing, on-hold și completed; un status nou nu schimbă comportamentul singur.
Mă ajutați să proiectați fluxul?
Da. Cere ofertă fixă.
Subiecte acoperite pe această pagină
- statusuri personalizate comenzi WooCommerce
- wc_order_statuses
- register_post_status WooCommerce
- Order Status Manager
- status comandă în pregătire
Ghiduri apropiate
- WooCommerce: editarea unei comenzi înainte de expediere
- WooCommerce: împărțirea unei comenzi în livrări parțiale
- WooCommerce: generarea listelor de picking pentru depozit
- WooCommerce: tipărirea listelor de ambalare
- WooCommerce: detectarea comenzilor suspecte înainte de expediere
- WooCommerce: confirmarea comenzilor ramburs prin cod SMS
- WooCommerce: stocul nu scade după comandă
- WooCommerce: împărțirea unei comenzi în livrări parțiale
- Toate ghidurile
Surse și verificare
- Codul sursă WooCommerce: funcții de comenzi (wc-order-functions.php)
- Codul sursă WooCommerce: tipuri de conținut și statusuri (class-wc-post-types.php)
- Order Status Manager (WooCommerce.com)
Verificat pe 5 noiembrie 2026. Denumirile din setări și pașii pot diferi între versiuni.
