Dezvoltatori 1C-Bitrix - câmpuri suplimentare în notificarea prin poștă a unei comenzi noi

Anume, înlocuiți linia

$ event-> Trimite ("SALE_NEW_ORDER", SITE_ID, $ arFields);

la următoarea bucată de cod:

$ eventName = "SALE_NEW_ORDER";
$ bSend = adevărat;
$ db_events = GetModuleEvents ("vânzare", "OnOrderNewSendEmail");






în timp ce ($ arEvent = $ db_events-> Fetch ())
dacă (ExecuteModuleEventEx ($ arEvent, Array ($ arResult # 91; "ORDER_ID" # 93; $ eventName, $ arFields)) === false)
$ bSend = false;

dacă ($ bSend)
$ event-> Trimite ("SALE_NEW_ORDER", SITE_ID, $ arFields);

Această metodă nu a funcționat și în ordine.ajax acest eveniment, de asemenea, nu.
Dar am găsit un modul gata "Extensia notificărilor pentru comenzi" - arată perfect proprietățile comenzii.

Aveam nevoie să aduc un alt serviciu de livrare și un sistem de plată, așa că am adăugat un dosar puțin:
module> shopolia.emailfields> clase> mysql> CShopoliaEmailFieldsHandlers.php






Găsiți șablonul de e-mail:

dacă ($ event == "SALE_NEW_ORDER" ȘI $ arFields # 91; 'ORDER_ID' # 93;> 0)

Și îi adăugăm elementele necesare:

Pe ieșire obținem în plus față de funcțiile standard ale modulului alte câteva variabile pe care le puteți utiliza în șablon:

Este ușor de cultivat dacă este necesar.

Am folosit această metodă și am intrat într-o singură problemă. Această problemă se bazează pe faptul că Bitrix nu și-a finalizat încă funcția CSaleOrder :: GetByID. și anume, nu au adăugat acolo STORE_ID pentru a determina ce punct de problemă a fost selectat, sunt de acord că această informație ar fi, de asemenea, frumos să adăugați la notificarea prin poștă. Am săpat, și iată ce am făcut:
1. În șabloanele de e-mail și tipul de eveniment, adăugați eticheta # DELIVERY_DESCRIPTION # - descrierea livrării
2. Cod curent pentru determinarea metodei de livrare

Înlocuiți-l cu următoarele:


P.S. Decizia este temporară, pentru că Când terminați funcția de bază, puteți face mai ușor


P.S. și să cumpere un modul pentru 1500 cred că nu este rezonabil chiar și pentru cei care nu sunt puternici în programare, pentru că aceștia continuă să funcționeze nu așa cum ar trebui să fie pentru client și trebuie totuși să se adreseze programatorilor sau creierului însuși pentru a-și chinui.

8-800-250-1860 Contactați-ne Harta site-ului
Website design -





Trimiteți-le prietenilor: