Magazin - coș de cumpărături și gestionarea comenzilor.
cerinţe
- MODx Revolution 2.0.0-RC-2 sau mai târziu
- PHP5 sau mai târziu
Instalarea componentei
- componenta însăși este instalată în mod standard
- pentru a adăuga un widget panoului, mergeți la Panou »Panouri» Implicit »Editare» Adăugare widget »Ordine statistici. Glisați în lista widget-urilor în sus.
Setarea setului de parametri
- deschideți articolele »Fragmente» Magazin »Opțiuni» Adăugați un set de parametri »Creați un nou set de parametri și completați câmpurile necesare pentru a crea un nou set de parametri.
- În lista din stânga, selectați setul creat și, dacă este necesar, modificați setările.
- în șablonul în locul în care doriți să afișați coșul de cumpărături, sunați la fragmentul de magazin cu setul de parametri (cart_catalog)
Acest set de parametri se sincronizează cu solicitările ajax. Parametrii implicit ai fragmentului nu sunt recomandați a fi editați. acestea se pot modifica atunci când sunt actualizate.
În panoul de administrare din configurația componentei (System »System settings» Shopkeeper) și specificați setul de parametri de fragment implicit care va fi utilizat la trimiterea comenzii.
Setarea contextului
Crearea contextului "catalog". Setări de context:
- error_page: 10
- pagină neautorizată: 11
unde 10 este ID-ul documentului de director, error_page este pagina 404, pagina neautorizată este pagina 403 (accesul este refuzat)
Catalogul de drepturi de acces în context (Sistem »Context» Catalog »Editare» Drepturi de acces) ar trebui să fie același cu contextul "web". adică:
- anonim, 9999, Încărcați numai
- Administrator, 0, Administrator
Verificați dacă a fost instalat pluginul "contextSwitch" (core / components / shopkeeper / elements / plugins / context_switch.php).
Dacă este utilizată înregistrarea, trebuie să creați un grup de utilizatori.
Parametrii de produs suplimentari
Elementele pot fi atribuite parametrilor pe care cumpărătorul le poate alege înainte de a adăuga bunurile în coșul de cumpărături. Parametrii sunt afișați sub forma unei liste derulante - shk_select. butoane radio - shk_radio sau casete de selectare (casete de selectare) - shk_checkbox.
Puteți selecta tipul de ieșire din setările parametrilor TV din fila Opțiuni ieșire.
Valorile parametrilor (pe pagina pentru editarea resurselor (mărfurilor)) sunt introduse în conformitate cu acest principiu: numele parametrului 1 == prețul 1 || numele parametrului 2 == prețul 2 ||.
Puteți introduce prețul parametrului cu semnul de înmulțire: Greutate == * 0.5 || Greutate == * 1. În acest caz, prețul produsului va fi înmulțit cu prețul parametrului.
În fragmentul fragmentului getResources, parametrii sunt afișați ca substituenți: # 91; + tv.param1]].
Pe pagina produsului (în șablonul de produs), trebuie să modificați ID-ul parametrului. Puteți face acest lucru cu filtrul de înlocuire:
- Parametrii de ieșire: core / model / modx / procesoare / element / tv / renders / mgr / properties /
- Parametrii de ieșire: manager / șabloane / implicit / element / tv / renders / properties /
- Controlere de ieșire: core / model / modx / procesoare / element / tv / rendere / web / output /
Producția de bunuri din contextul cu paginare:
Utilizați fragmentele getProducts și getPage. În loc de getProducts, puteți utiliza getResources.
Codul fragmentului "include":
Trimiterea scrisorilor către cumpărător atunci când starea comenzii este modificată
Dacă doriți să trimiteți un e-mail cumpărătorului la modificarea stării comenzii, în configurația modulului (setări de bază) trebuie să creați un parametru cu cheia shk.mailstatus_1. unde 1 este numărul de stare de la zero.
În valoarea parametrului, specificați numele șirului de șablon de e-mail, de exemplu @FILE mailChangeStatus.tpl. Spațiu de nume - alegeți "comerciant".
Pentru a trimite date de comandă la e-mail și la Componenta magazin, utilizați fragmentele FormIt și shk_fihook (exemplul de mai jos).
După trimiterea unei comenzi pe orice pagină, există locații cu date ale acestei comenzi:
Instrucțiuni pentru utilizarea componentei "Gestionați comenzi"
Ordine de sortare
În mod prestabilit, toate comenzile sunt sortate în funcție de ID în ordinea inversă, adică cel mai nou la început. Pentru a schimba sortarea, faceți clic pe titlul coloanei tabelului pe care doriți să sortați. Apăsați din nou pentru a inversa sortarea.
Starea comenzilor și notele la comenzi
Pentru a schimba starea comenzii în rândul ordinii dorite, faceți dublu clic pe numele stării curente și selectați o nouă stare din lista care apare. În acest caz, cumpărătorului i se va trimite un e-mail cu informații despre starea, lista bunurilor, prețul și informațiile de contact specificate.
Puteți verifica mai multe comenzi simultan cu casetele de selectare și puteți schimba starea acestora utilizând butonul "Acțiuni în masă". Când modificați starea prin acțiuni în masă, scrisoarea nu este trimisă cumpărătorilor.
Pentru a face o comandă pentru o notă (cumpărătorul nu este trimis) - faceți clic de două ori în coloana corespunzătoare și introduceți textul. Apăsați tasta "Enter" sau faceți clic oriunde în spațiul liber pentru a salva.
Pentru a adăuga un element la comandă, deschideți blocul "Adăugați la comandă". Completați câmpurile. Dacă câmpul "preț" este lăsat necompletat, dacă salvați prețul, acesta va fi preluat automat. Faceți clic pe butonul "Salvați".
În coloana "Utilizator", puteți vedea numele de utilizator (dacă este înregistrat) cu care a fost plasată comanda. Dacă faceți clic pe link, puteți accesa pagina cu informații detaliate despre utilizator.
În fila "Configurare", puteți modifica numele și culoarea stărilor și o listă a metodelor de livrare (abilitatea de a schimba metoda de livrare este convenită cu dezvoltatorul magazinului online).
Producția de comenzi în componenta de gestionare a comenzilor numai acei utilizatori care sunt atribuite managerului.
Componenta de gestionare a comenzilor oferă posibilitatea de a afișa comenzi făcute numai de utilizatorii care se află într-un anumit grup.
Pentru fiecare manager de magazin, puteți atribui un grup de utilizatori, din care să poată vizualiza comenzile din componentă.
Pentru aceasta aveți nevoie de:
Acum, în componenta de gestionare a comenzilor, managerul va putea vizualiza comenzile numai de la un anumit grup de utilizatori (de exemplu, "Wholesale wholesale"). Administratorul (care constă în grupul "Administrator") vede comenzi de la orice utilizator.
Utilizați fragmentele getProducts și getPage. În loc de getProducts, puteți utiliza getResources.
Șabloane și înlocuitori
cartRowTpl - șablon (bucată) a liniei cu informațiile despre mărfurile din coș
cartTpl - șablon (bucată) a coșului
additDataTpl șablon pentru adăugare. setările din coșul de cumpărături
- # 91; # 91; + param]] - numele parametrului și prețul;
- # 91; # 91; + nume]] - numele parametrului;
- # 91; # 91; + preț]] - prețul parametrului.
orderDataTpl (în fragment) și order_data_tpl (în setările componentelor) - șablon pentru conținutul comenzii (în literă și componentă)
- # 91; # 91; + price_total]] - prețul total al mărfurilor din coș;
- # 91; # 91; + items_total]] - numărul total de articole din cărucior;
- # 91; # 91; + items_unique_total]] - numărul total de articole unice din coș;
- # 91; + moneda]] - moneda mărfurilor;
- # 91; + bucla]]. # 91; # 91; + end_loop]] - începutul și sfârșitul liniei de date a produsului (buclă). În interior, sunt disponibili toți substituenții de la cartRowTpl.
emailTpl - șablonul scrisorii despre ordinea fragmentului FromIt
- # 91; # 91; + nume comandă]] - ID-ul comenzii;
- # 91; # 91; + ordineData]] - lista de produse în ordine după șablonul "orderDataTpl";
- # 91; # +; data]] - data și ora comenzii.
Selectarea și adăugarea la comanda metodei de livrare
O listă a metodelor de livrare și a prețurilor poate fi creată în configurația componentelor. Primul câmp de pe linie este numele livrării, al doilea câmp este prețul. Pentru a extrage și a adăuga metoda de livrare la comandă, puteți utiliza pluginul "shk_delivery".
Verificați dacă plugin-ul cu evenimentul "OnSHKbeforeCartLoad" a fost creat în panoul de administrare și că utilizează codul din fișierul core / components / shopkeeper / elements / plugins / delivery.php.
În fila Setări a pluginului, puteți configura șablonul pentru a afișa o listă cu metodele de livrare. Pluginul creează un substituent "shk_delivery".
După trimiterea formularului de comandă, livrarea va fi adăugată la comandă.
Funcția JS-callback
- SHKfillCartCallback (formă) - comandă pentru adăugarea de bunuri în coș;
- SHKemptyCartCallback () - comandă pentru curățarea coșului de reciclare;
- SHKloadCartCallback () - coșul este încărcat / actualizat;
- SHKtoCartCallback (formă) - comanda este trimisă pentru a trimite bunurile în coș.
- SHKrecountItemCallback (count, el) - comanda este dată pentru recalcularea cantității mărfurilor într-un coș
Doar creați funcții cu aceste nume și acestea vor fi chemate cu o anumită acțiune.
Evenimente pentru plug-in-uri
- OnSHKaddProduct - adăugarea de bunuri în coșul de cumpărături. $ purchaseArray
- OnSHKgetProductPrice - selectarea prețului bunurilor când se adaugă la coș. $ purchaseArray
- OnSHKcalcTotalPrice - calculează prețul total al mărfurilor din coș. $ price_total. $ achiziții
- OnSHKbeforeCartLoad - se numește înainte de formarea codului HTML al coșului.
- OnSHKcartLoad - afișați coșul de reciclare. $ items_total. $ price_total
- OnSHKChangeStatus - modificați starea comenzii. Disponibil: $ order_id. $ status.
- OnSHKsaveOrder - trimiterea comenzii. $ order_id
- OnSHKScriptsLoad - încărcarea scripturilor componentei de gestionare a comenzilor. puteți încărca fișierul dvs. js.
elaborarea unei comenzi
bucata magazinOrderForm: core / componente / comerciant / elemente / bucati / en / shopOrderForm.tpl
bucată magazinOrderReport: core / componente / comerciant / elemente / bucăți / en / shopOrderReport.tpl