Cum să adăugați și să editați starea comenzii personalizate în WooCommerce

Publicat: 2022-05-14

Doriți să adăugați și să editați starea comenzii personalizate în WooCommerce? Ele pot fi foarte utile pentru a oferi o mai bună claritate cu privire la stările comenzilor clienților dvs.

În mod implicit, WordPress și WooCommerce nu vă permit să adăugați stare personalizată a comenzii. Dar cu ajutorul codurilor, le putem adăuga în magazinul dvs. online și le putem edita în cel mai scurt timp. Cu toate acestea, să aruncăm o privire la motivul pentru care ar putea fi necesar să adăugați sau să editați starea comenzii personalizate în WooCommerce înainte de a începe procesul.

De ce să adăugați și să editați starea comenzii personalizate în WooCommerce?

Utilizarea corectă a stării comenzii este foarte importantă pentru a asigura procesul de cumpărare pe orice magazin online. Într-un site de comerț electronic, pot exista mai mulți pași pe care clienții trebuie să-i parcurgă pentru a finaliza o achiziție. Desigur, acești pași suplimentari vor duce la mai puține vânzări.

Alternativ, cu cât trebuie să gestionăm mai puține comenzi, cu atât o rată de vânzări mai bună va avea un magazin de comerț electronic. În plus, gestionarea întregului site web va face lucrurile mai ușoare și mai simple.

Cu toate acestea, vom avea nevoie de cel puțin două tipuri de stări de comandă în toate cazurile. Primul tip de stare a comenzii este necesar atunci când utilizatorul plasează o comandă cu succes. Poate fi setat la plată în așteptare, procesare sau în așteptare.

În mod similar, avem nevoie și de un alt statut al comenzii care seamănă cu faptul că comanda este finalizată. Aici, este posibil ca clientul să fi efectuat o plată și să fi primit produsul. Dar dacă comanda nu este finalizată din cauza unui eveniment nefericit, poate fi chiar setată ca eșuată, anulată sau rambursată.

Deci, în total, avem următoarele stări implicite de comandă disponibile în WooCommerce pe care le putem folosi în mod liber:

  • În așteptarea plată
  • A eșuat
  • Prelucrare
  • Efectuat
  • In asteptare
  • Anulat
  • Rambursat

Aceste stări ale comenzii sunt destul de adecvate pentru orice site de comerț electronic. Sunt chiar mai mult decât suficiente pentru ceea ce poate folosi site-ul mediu.

Dar dacă aceste stări implicite încă nu sunt suficiente pentru dvs., cu siguranță va trebui să creați unele stări personalizate pentru magazinul dvs. online. Adăugarea acestora pe site-ul dvs. web va oferi cu siguranță clienților dvs. o înțelegere mai clară a stării comenzilor lor WooCommerce. De exemplu, dacă doriți ca starea unei comenzi să informeze în mod specific clienții că comanda lor este un apel în așteptare, va trebui să adăugați o stare personalizată a comenzii WooCommerce.

Cum se creează o stare de comandă personalizată WooCommerce?

Comenzile WooCommerce sunt tratate ca un tip special de postare personalizată. Prin urmare, are atașată o valoare post_status în tabelul wp_posts al bazei de date, în același mod ca orice alt tip de postare.

Deci, pentru a include starea comenzii noastre personalizate în lista de stare disponibilă, trebuie să folosim funcția încorporată register_post_status() WP.

Dar înainte de a continua, vă rugăm să vă asigurați că creați o temă copil în mod programatic sau utilizând unul dintre pluginurile temei secundare pentru a face aceste modificări. Acest lucru vă asigură că personalizările pe care le faceți fișierelor cu teme nu vor fi modificate atunci când actualizați tema WordPress. În mod similar, vă reamintim, de asemenea, să faceți o copie de rezervă a site-ului dvs. WordPress, astfel încât să vă puteți restabili site-ul dacă sunt făcute modificări inutile.

1. Accesați fișierul functions.php

Pentru a crea și edita o stare de comandă personalizată în WooCommerce, mai întâi va trebui să accesați fișierul cu funcția temei. Mai întâi, accesați Aspect > Editor de fișiere temă din tabloul de bord WordPress. Apoi, selectați fișierul „ funtions.php ” din fișierele teme din partea dreaptă a ecranului.

2. Adăugați codurile în fișierul functions.php

Acum, copiați și lipiți următorul script în fișierul functions.php al temei copilului dumneavoastră. Aceasta va crea o nouă stare de comandă personalizată numită „Apel în așteptare”.

 // Înregistrați un nou statut
funcția register_wait_call_order_status() {
register_post_status( 'wc-waiting-call', array(
'label' => 'Apel în așteptare',
„public” => adevărat,
'show_in_admin_status_list' => adevărat,
'show_in_admin_all_list' => adevărat,
'exclude_from_search' => fals,
'label_count' => _n_noop( 'Apel în așteptare (%s)', 'Apel în așteptare (%s)' )
) );
}
// Adăugați stare personalizată la lista de stare a comenzii
funcția add_wait_call_to_order_statuses( $order_statuses ) {
$new_order_statuses = array();
foreach ( $order_statuses as $key => $status ) {
$new_order_statuses[ $key ] = $status;
if ( 'wc-on-hold' === $key ) {
$new_order_statuses['wc-waiting-call'] = 'Apel în așteptare';
}
}
returnează $new_order_statuses;
}
add_action('init', 'register_wait_call_order_status');
add_filter( 'wc_order_statuses', 'add_wait_call_to_order_statuses');

Rețineți că folosim câteva cârlige aici. Primul este wp_init() și este folosit pentru a înregistra noul nostru statut. Odată ce starea este înregistrată, această funcție nu mai este necesară, puteți elimina acest cârlig și funcția sa de apel invers după terminare.

Iar al doilea este cârligul de filtru wc_order_statuses() , care include starea noii comenzi în lista disponibilă. Deci poate fi folosit atunci când îl atașați la o comandă din tabloul de bord de administrare WooCommerce.

Puteți vedea starea noii comenzi personalizate atunci când editați oricare dintre comenzile din WooCommerce > Comenzi din tabloul de bord WordPress. Apoi, faceți clic pe opțiunea de stare și starea comenzii „Apel în așteptare” va fi afișată în meniul drop-down.

editați starea comenzii personalizate în woocommerce creați starea comenzii personalizate

Editați starea unei comenzi existente pe WooCommerce

De asemenea, putem folosi același cârlig de filtru văzut în exemplul de script anterior wc_order_statuses() pentru a schimba numele stării comenzii existente.

Următorul cod exemplu va edita două statistici de comandă: „procesare” și „finalizat”, schimbându-le în „în curs” și „livrat”:

 funcția QuadLayers_rename_status( $order_statuses ) {
foreach ( $order_statuses as $key => $status ) {
if ( 'wc-processing' === $key ) {
$order_statuses['wc-processing'] = _x( 'În curs', 'Starea comenzii', 'woocommerce' );
}
if ( 'wc-completed' === $key ) {
$order_statuses['wc-completed'] = _x( 'Livrat', 'Starea comenzii', 'woocommerce' );
}
}
returnează $status_comandă;
}
add_filter( 'wc_order_statuses', 'QuadLayers_rename_status');

Nu uitați să actualizați fișierul după ce adăugați codurile la el.

Asta e! Acesta este modul în care puteți edita o stare de comandă existentă sau personalizată pe site-ul dvs. WooCommerce.

editați starea comenzii personalizate în woocommerce Redenumiți starea comenzii woocommerce

Eliminați starea unei comenzi în WooCommerce

Din nou, wc_order_statuses() va fi util pentru a elimina o anumită stare de comandă. În acest caz, eliminăm starea comenzii „rambursată”.

Utilizați următorul script pentru a elimina starea unei comenzi existente. Acest lucru va funcționa atât pentru stările implicite ale comenzii, cât și pentru cele personalizate.

 funcția QuadLayers_remove_status( $status ) {
if( isset( $status['wc-refunded'] ) ){
unset( $status['wc-refunded'] );
}
returnează $status;
}
add_filter( 'wc_order_statuses', 'QuadLayers_remove_status');

Rețineți că, dacă eliminați o stare implicită de comandă WooCommerce, aceasta ar putea întrerupe integrarea cu unele gateway-uri de plată.

Concluzie

Acestea sunt câteva dintre diferitele modalități de a adăuga și edita starea comenzii personalizate în WooCommerce cu ajutorul codurilor. Ele pot fi modificate și mai mult pentru a edita și elimina chiar și stările implicite existente ale comenzii WooCommerce. Cu toate acestea, trebuie să adăugați noi stări de comandă personalizate sau să le editați pe cele existente doar dacă stările implicite ale comenzii nu sunt suficiente pentru dvs. și nevoile clienților dvs.

După cum puteți vedea, este foarte ușor să adăugați și să editați o stare de comandă personalizată în magazinul dvs. online. Dar trebuie să aveți o înțelegere de bază despre cum să utilizați cârligele WooCommerce. În mod similar, dacă doriți să aflați mai multe despre comenzile WooCommerce, avem chiar și ghiduri detaliate despre cum să testați, să repetați, să ștergeți și chiar să completați automat comenzile în WooCommerce.

Deci, ați încercat să editați și să adăugați stările comenzii pe site-ul dvs.? Vă rugăm să ne anunțați în comentarii.

Între timp, nu ezitați să aruncați o privire la câteva dintre postările noastre care v-ar putea fi de ajutor:

  • Cum se creează un plugin WordPress personalizat
  • Cele mai bune pluginuri WooCommerce pentru a repeta comenzile
  • Cum să adăugați taxe la WooCommerce Checkout