Instalare, configurare și atributele produsului
Domeniul documentului
Acest document descrie instalarea modulului Estimated Delivery Date, configurarea în panoul de administrare Magento 2 și gestionarea atributelor adăugate produsului. Descrierea câmpurilor se bazează pe implementarea actuală a modulului.
Instalare
Pachetul este destinat instalării prin Composer.
Exemplu de instalare dintr-un repository VCS:
composer config repositories.kowal.estimated.delivery.date vcs https://github.com/kowalco/estimated-delivery-datecomposer require kowal/module-estimated-delivery-datebin/magento module:enable Kowal_EstimatedDeliveryDatebin/magento setup:upgradebin/magento cache:flush
După implementarea în producție, trebuie rulat procesul standard de compilare și deploy al resurselor statice, conform proiectului Magento:
bin/magento setup:di:compilebin/magento setup:static-content:deploybin/magento cache:flush
Locația configurației
Configurația modulului este disponibilă în panoul de administrare:
Stores > Configuration > Sales > Estimated Delivery Date
Setările sunt disponibile la nivel de default, website și store view, în conformitate cu mecanismul de configurare Magento.
General
Enabled
Activează sau dezactivează modulul pentru domeniul de configurare respectiv. Când câmpul este dezactivat, mesajele din frontend nu ar trebui afișate.
Valoare implicită: Yes.
Calculation Timezone
Fusul orar utilizat pentru calculul datelor și al orei cut-off. Dacă acest câmp rămâne gol, modulul folosește fusul orar al magazinului configurat în Magento.
Exemplu de valoare:
Europe/Warsaw
Utilizare: util atunci când magazinul operează în mai multe store view sau când depozitul care gestionează expedierile funcționează într-un alt fus orar decât configurația implicită a magazinului.
Fallback Message
Mesaj de rezervă folosit ca text de urgență atunci când magazinul dorește să afișeze o informație generală în locul unei date concrete.
Valoare implicită:
Vom confirma termenul de livrare după plasarea comenzii.
Formatul datei folosit la randarea mesajelor pentru client. Câmpul utilizează modelul ICU acceptat de formatarea datelor în Magento.
Valoare implicită:
EEEE, d MMMM
Exemplu de rezultat:
luni, 18 mai
Date Calculation
Processing Days Min
Numărul minim de zile lucrătoare necesare pentru pregătirea comenzii înainte de expediere.
Valoare implicită: 1.
Utilizare: determină cea mai devreme dată posibilă de expediere.
Processing Days Max
Numărul maxim de zile lucrătoare necesare pentru pregătirea comenzii.
Valoare implicită: 1.
Utilizare: permite crearea unui interval de date de expediere atunci când pregătirea poate dura mai mult decât timpul minim.
Transport Days Min
Numărul minim de zile lucrătoare de transport de la expediere până la livrare.
Valoare implicită: 1.
Utilizare: determină cea mai devreme dată posibilă de livrare după expediere.
Transport Days Max
Numărul maxim de zile lucrătoare de transport.
Valoare implicită: 2.
Utilizare: permite afișarea unui interval de livrare, de exemplu atunci când transportatorul livrează de obicei în 1-2 zile lucrătoare.
Same-day Shipping Cut-off Time
Ora limită pentru expedierea în aceeași zi. Valoarea trebuie introdusă în formatul HH:MM.
Valoare implicită:
14:00
Dacă ora curentă este mai târzie decât cut-off, modulul mută începutul calculului în următoarea zi lucrătoare.
Non-working Weekdays
Lista zilelor săptămânii tratate ca nelucrătoare. Valorile trebuie introduse ca numere ISO separate prin virgulă:
1 - luni,2 - marți,3 - miercuri,4 - joi,5 - vineri,6 - sâmbătă,7 - duminică.
Valoare implicită:
6,7
Utilizare: în mod standard, omite sâmbăta și duminica la calculul zilelor lucrătoare.
Safety Buffer Days
Buffer suplimentar de siguranță adăugat la timpul de transport.
Valoare implicită: 0.
Utilizare: util în perioade cu volum crescut de comenzi, în cazul unei activități instabile a transportatorilor sau pentru produse care necesită o promisiune de livrare mai prudentă.
Display Settings
Show on Product Page
Activează afișarea datei estimate pe pagina produsului.
Valoare implicită: Yes.
Show in Cart
Activează afișarea datei estimate în coș.
Valoare implicită: Yes.
Show in Admin Order
Activează secțiunea Estimated Delivery Date în vizualizarea comenzii din panoul de administrare.
Valoare implicită: Yes.
Show Cut-off Widget on Product Page
Activează widgetul de numărătoare inversă până la ora cut-off pe pagina produsului.
Valoare implicită: Yes.
Activează widgetul cut-off în coș.
Valoare implicită: No.
Definește modul de afișare al widgetului cut-off.
Valori disponibile:
Inline - widgetul este afișat în locul unde este inserat blocul,Fixed - widgetul este lipit de colțul selectat al ecranului,Inline + Fixed - widgetul funcționează simultan ca element inline și fixed.
Valoare implicită: Inline.
Definește poziția widgetului fixed.
Valori disponibile:
Bottom Right - colțul din dreapta jos,Bottom Left - colțul din stânga jos,Top Right - colțul din dreapta sus,Top Left - colțul din stânga sus.
Valoare implicită: Bottom Right.
Definește tipul de dispozitive pe care trebuie să fie vizibil widgetul fixed.
Valori disponibile:
Desktop,Mobile,Desktop + Mobile.
Valoare implicită: Desktop + Mobile.
After Cut-off Behavior
Definește comportamentul widgetului după depășirea orei cut-off.
Valori disponibile:
Hide Widget - widgetul va fi ascuns,Show After Cut-off Message - widgetul va afișa un mesaj după cut-off.
Valoare implicită: Show After Cut-off Message.
Customer Messages
Mesajele acceptă variabile simple în formatul {{nazwa_zmiennej}}.
Variabile disponibile pentru mesajele de livrare:
{{ship_date}},{{ship_date_from}},{{ship_date_to}},{{delivery_date}},{{delivery_date_from}},{{delivery_date_to}}.
Variabile disponibile pentru mesajele cut-off:
{{cutoff_time}},{{cutoff_countdown}}.
Delivery Range Message
Șablonul mesajului folosit atunci când calculul returnează un interval de date de livrare.
Valoare implicită:
Livrare estimată: {{delivery_date_from}} - {{delivery_date_to}}
Single Delivery Date Message
Șablonul mesajului folosit atunci când cea mai devreme și cea mai târzie dată de livrare sunt identice.
Valoare implicită:
Livrare estimată: {{delivery_date}}
Cut-off Countdown Message
Mesaj afișat înainte de depășirea orei cut-off.
Valoare implicită:
Comandă în următoarele {{cutoff_countdown}} și vom expedia încă astăzi.
After Cut-off Message
Mesaj afișat după depășirea orei cut-off, dacă câmpul After Cut-off Behavior este setat pentru afișarea mesajului.
Valoare implicită:
Expedierea de astăzi este deja închisă. Vom expedia în următoarea zi lucrătoare.
Emails
Send Separate Email After Payment
Activează un mesaj e-mail separat trimis după plata comenzii.
Valoare implicită: No.
Utilizare: permite confirmarea către client că plata a fost acceptată și comanda a intrat în procesare.
Payment Confirmation Template
Șablonul e-mailului trimis după plată.
Valoare implicită:
estimated_delivery_date_emails_payment_template
Payment Confirmation Sender
Expeditorul mesajului după plată. Câmpul utilizează identitățile e-mail configurate în Magento.
Valoare implicită:
sales
Allow Email After Delivery Date Change
Permite trimiterea către client a unui mesaj după modificarea manuală a termenului de livrare în panoul de administrare.
Valoare implicită: Yes.
Delivery Date Change Template
Șablonul e-mailului trimis după modificarea termenului de livrare.
Valoare implicită:
estimated_delivery_date_emails_date_change_template
Delivery Date Change Sender
Expeditorul mesajului privind modificarea termenului de livrare.
Valoare implicită:
sales
Default Apology Message
Conținutul implicit al scuzelor utilizat în mesajul despre modificarea termenului de livrare.
Valoare implicită:
Ne cerem scuze, termenul de procesare al comenzii dvs. a fost modificat.
Require Delay Reason
Solicită indicarea motivului întârzierii la modificarea manuală a termenului în vizualizarea comenzii.
Valoare implicită: No.
Utilizare: impune o disciplină operațională mai bună și facilitează explicarea ulterioară a modificărilor de termen.
Send Automatically After Manual Date Change
Trimite automat un mesaj către client după modificarea manuală a termenului de livrare.
Valoare implicită: No.
Dacă acest câmp este dezactivat, administratorul poate decide trimiterea prin bifarea checkboxului în vizualizarea comenzii.
Gestionarea atributelor produsului
Modulul adaugă produsului grupul de atribute Estimated Delivery Date. Atributele sunt opționale și au domeniu store view. Dacă nu sunt completate, modulul folosește regulile sau configurația globală.
Atributele produsului au prioritate față de regulile calculate pentru produs. Acest lucru permite suprascrierea rapidă a termenului pentru un SKU concret fără modificarea setărilor globale.
Unde se editează atributele
Atributele sunt disponibile în panoul de administrare Magento:
Catalog > Products > Edit Product > Estimated Delivery Date
Dacă grupul nu este vizibil în setul de atribute respectiv, trebuie verificată configurația setului de atribute al produsului în Magento.
EDD Processing Days Min
Codul atributului:
edd_processing_days_min
Numărul minim de zile lucrătoare necesare pentru pregătirea unui anumit produs.
Utilizare: un produs disponibil imediat poate avea valoarea 0, iar un produs adus de la furnizor, de exemplu, 3.
EDD Processing Days Max
Codul atributului:
edd_processing_days_max
Numărul maxim de zile lucrătoare de pregătire pentru un anumit produs.
Utilizare: dacă pregătirea este variabilă, se poate seta, de exemplu, minimum 2 și maximum 5, astfel încât mesajul să afișeze un interval mai sigur.
EDD Transport Days Min
Codul atributului:
edd_transport_days_min
Numărul minim de zile lucrătoare de transport pentru un anumit produs.
Utilizare: pentru produsele expediate cu alt transportator sau din alt depozit.
EDD Transport Days Max
Codul atributului:
edd_transport_days_max
Numărul maxim de zile lucrătoare de transport pentru un anumit produs.
Utilizare: pentru produse voluminoase, paletizate sau care necesită logistică specială.
EDD Static Customer Message
Codul atributului:
edd_static_text
Mesaj propriu pentru client afișat în locul mesajului din configurația globală.
Exemple:
Produs realizat la comandă. Vom confirma termenul de livrare după achiziție.
Livrare estimată: {{delivery_date_from}} - {{delivery_date_to}}
Atributul poate utiliza aceleași variabile de dată care sunt disponibile în mesajele globale de livrare.
EDD Confidence
Codul atributului:
edd_confidence
Nivelul de certitudine al termenului salvat împreună cu promisiunea de livrare.
Valori recomandate:
guaranteed - termen garantat,likely - termen probabil,estimated - termen orientativ,unknown - lipsa unei estimări credibile.
Implementarea actuală salvează această valoare în rezultatul calculului și în snapshoturi. Poate fi utilizată de șabloane, integrări sau pentru personalizarea suplimentară a mesajelor.
Disable Estimated Delivery Date
Codul atributului:
edd_disable
Dezactivează afișarea livrării estimate pentru un anumit produs pe pagina produsului și dezactivează pentru acesta widgetul cut-off.
Utilizare: produse indisponibile, produse care necesită ofertă individuală pentru livrare, servicii, produse în precomandă sau produse pentru care magazinul nu dorește să facă o promisiune privind termenul.
Bune practici pentru completarea atributelor
Pentru majoritatea produselor, atributele pot rămâne goale și se poate folosi configurația globală. Merită completate doar atunci când un produs concret diferă în mod real de procesul logistic standard.
Exemplu de abordare:
- produse disponibile imediat: se lasă goale sau se setează un timp de pregătire mai scurt,
- produse aduse de la furnizor: se setează un interval mai lung de pregătire,
- produse voluminoase: se setează un transport mai lung,
- produse personalizate: se utilizează un mesaj static propriu,
- produse fără termen credibil: se activează
Disable Estimated Delivery Date sau se setează un mesaj explicativ.
După modificarea atributelor produsului, trebuie reîmprospătat cache-ul Magento, dacă magazinul utilizează full page cache sau mecanisme suplimentare de cache în temă.
Importul sărbătorilor și al zilelor libere
Importul este disponibil în panoul de administrare:
Sales > Estimated Delivery Date > Import Holidays
Fișierul CSV trebuie să conțină coloanele:
code,name,type
Coloane opționale:
date_from,date_to,month,day,country,region,postcode_pattern,shipping_method,source_code,store_id,scope,is_active
Tipuri acceptate în coloana type:
single - dată individuală, necesită date_from,range - interval de date, necesită date_from și date_to,recurring - dată recurentă, necesită month și day.
Descrierea câtorva câmpuri de import:
code - cod unic al sărbătorii sau zilei libere,name - denumirea vizibilă administrativ,type - tipul înregistrării: zi individuală, interval sau dată recurentă,date_from - data de început în formatul YYYY-MM-DD,date_to - data de sfârșit în formatul YYYY-MM-DD,month - luna pentru înregistrarea recurentă,day - ziua lunii pentru înregistrarea recurentă,country - codul țării,region - regiunea,postcode_pattern - modelul codului poștal,shipping_method - metoda de livrare,source_code - codul sursei MSI,store_id - identificatorul store view,scope - domeniul de aplicare, implicit shipping_delivery,is_active - statusul de activitate al înregistrării.
Exemplu:
code,name,type,date_from,date_to,month,day,country,store_id,is_activechristmas_2026,Christmas Break,range,2026-12-24,2026-12-26,,,,,1new_year,New Year,recurring,,,1,1,,,1
Gestionarea termenului în comandă
Secțiunea Estimated Delivery Date este disponibilă în vizualizarea comenzii, dacă este activat câmpul Show in Admin Order.
Administratorul poate edita:
- data de expediere de la,
- data de expediere până la,
- data de livrare de la,
- data de livrare până la,
- mesajul pentru client,
- motivul întârzierii.
Dacă e-mailul după modificarea termenului este activat, administratorul poate bifa trimiterea mesajului cu scuze și noul termen. Modulul salvează istoricul modificărilor împreună cu termenul anterior și cel nou, motivul și informația despre trimiterea e-mailului.
REST API
Modulul pune la dispoziție endpoint-urile:
GET /rest/V1/estimated-delivery/product/:skuGET /rest/V1/estimated-delivery/cart/:cartIdGET /rest/V1/estimated-delivery/guest-cart/:cartIdGET /rest/V1/estimated-delivery/order/:orderId
API returnează, printre altele, data de expediere, data de livrare, mesajul, nivelul de certitudine, codul regulii, data calculului și sursa datelor. Pentru comandă, modulul returnează snapshotul salvat, dacă există.