WooCommerce · Contul clientului
WooCommerce: implementarea notificărilor din contul clientului
Un client vrea să vadă într-un singur loc ce s-a întâmplat cu comanda sau cu returul. WooCommerce nu are un centru de notificări, dar contul se extinde simplu.
- Pagină nouă în Contul meu
- Filtrul woocommerce_account_menu_items
- Endpoint propriu
- Stare citit/necitit
- Emailurile rămân canalul principal
Răspuns în aceeași zi lucrătoare Ofertă fixă Fără parole
Răspuns rapid
Nucleul WooCommerce trimite emailuri, dar nu are un centru de notificări în cont. Meniul Contului meu se extinde prin filtrul woocommerce_account_menu_items (verificat în codul WooCommerce), iar conținutul unei pagini noi se afișează pe acțiunea woocommerce_account_{endpoint}_endpoint. Adaugi un endpoint „notificari”, o listă cu mesaje salvate pe utilizator, și marcarea ca citit. Păstrează emailul pentru evenimente importante: notificările din cont completează emailul, nu îl înlocuiesc.
Ce ai nevoie
- Ce notificări vrei (comandă, retur, ofertă)
- Unde le stochezi
- Cine le generează
- Acces la tema copil
Pașii, pe rând
- 1Decide ce notificiSchimbări de status comandă, cereri de retur, oferte, mesaje de la suport. Fiecare tip are un public și o urgență.
- 2Alege unde stochezi mesajeleMeta pe utilizator sau tabel propriu; fiecare mesaj are titlu, text, dată și starea citit/necitit.
- 3Adaugă pagina în meniuCu woocommerce_account_menu_items adaugi „Notificări” în Contul meu; adaugi și endpointul în sistemul de rute (rewrite endpoint) și golești regulile de rescriere.
- 4Afișează conținutulPe acțiunea woocommerce_account_notificari_endpoint afișezi lista, cu cele necitite primele.
- 5Generează mesajele din evenimenteLa schimbarea statusului unei comenzi sau a unei cereri, adaugi un mesaj pe utilizator.
- 6Marchează ca cititLa deschiderea listei sau la click, actualizezi starea. Afișează un indicator de necitite în meniu.
- 7Păstrează emailul pentru urgentUn client nu se loghează zilnic; evenimentele importante (expediere, rambursare) rămân pe email.
Pagină „Notificări” în Contul meu (schelet)
phpadd_action('init', function () {
add_rewrite_endpoint('notificari', EP_ROOT | EP_PAGES);
});
add_filter('woocommerce_account_menu_items', function ($items) {
$items['notificari'] = 'Notificări';
return $items;
});
add_action('woocommerce_account_notificari_endpoint', function () {
$mesaje = get_user_meta(get_current_user_id(), 'notificari_cont', true) ?: [];
if (!$mesaje) { echo '<p>Nu ai notificări.</p>'; return; }
foreach (array_reverse($mesaje) as $m) {
printf('<p><strong>%s</strong> – %s</p>', esc_html($m['data']), esc_html($m['text']));
}
});Fragmentele de cod sunt scheleturi: le adaptezi la magazinul tău și le testezi întâi pe un mediu de test (staging). După adăugarea endpointului, reîmprospătează regulile de rescriere (Setări → Legături permanente → Salvează). Stocarea mesajelor, marcarea ca citit și generarea lor din evenimente rămân de scris.
Nu este o funcție nativă WooCommerce. Am verificat în cod filtrul woocommerce_account_menu_items și mecanismul acțiunilor de endpoint; restul fluxului este dezvoltare proprie.
Mai multe detalii
Cauze frecvente și greșeli de evitatDacă pașii de mai sus nu au rezolvat problema
Pagina nouă dă 404
De ce: Regulile de rescriere nu au fost reîmprospătate.
Ce faci: Salvează Legăturile permanente.
Meniul nu arată pagina
De ce: Filtrul de meniu nu rulează sau tema suprascrie meniul.
Ce faci: Verifică tema și șabloanele Contului meu.
Clienții nu văd mesajele
De ce: Nu se loghează în cont.
Ce faci: Trimite și email pentru evenimentele importante.
Întrebări frecvente4 răspunsuri
Are WooCommerce centru de notificări în cont?
Nu; extinzi Contul meu cu o pagină proprie.
Înlocuiesc emailurile?
Nu; completează emailurile, nu le înlocuiesc.
Cum arăt numărul de necitite?
Cu un indicator în eticheta meniului, calculat din mesajele necitite ale utilizatorului.
Mă ajutați să construim centrul de notificări?
Da. Cere ofertă fixă.
Subiecte acoperite pe această pagină
- notificări cont client WooCommerce
- pagină nouă Contul meu
- woocommerce_account_menu_items
- endpoint My Account
- mesaje în contul clientului
Ghiduri apropiate
- WooCommerce: clientul nu se poate autentifica în cont
- WooCommerce: resetarea parolei nu funcționează
- WooCommerce: adăugarea mai multor adrese în contul clientului
- WooCommerce: asocierea comenzilor fără cont cu un cont nou
- WooCommerce: implementarea listei de produse favorite
- WooCommerce: implementarea comparării produselor
- WooCommerce: urmărirea statusului cererilor de retur
- Toate ghidurile
Surse și verificare
- Codul sursă WooCommerce: funcții de cont (wc-account-functions.php)
- Conturi de client îmbunătățite (documentație WooCommerce)
Verificat pe 5 noiembrie 2026. Denumirile din setări și pașii pot diferi între versiuni.
