Provocarea: nu afectează codul de sistem pentru a personaliza modulul de sistem prin adăugarea de propriile file.
Clasa este metoda __implement def_module a cărei sarcină este de a colecta toate cele necesare pentru clasele de module împreună. Implementyatsya toate clasele găsite în fișiere cu dublă subliniere, printre colectate și clasa va __emarket_custom_admin. situat în fișierul __custom_adm.php. Apoi, folosind PHP-funcții get_class_methods colectate de la clase de a lua o serie de toate metodele din toate clasele. Mai mult, fn variabila plasat numele onImplement și funcția folosind in_array funcția căutăm, dacă o anumită valoare este disponibilă prin anunțurile de metode. Dacă această valoare este, sistemul execută codul descris în funcția onImplement.
Astfel, dacă vrem să obțină acces la metoda de sistem, trebuie să le folosească în clasă și în onImplement metoda __emarket_custom_admin ().
Acum, adăugați o nouă filă în modul Internet-magazin.
Pentru a face acest lucru, deschideți fișierul și __emarket_custom_admin clasă /classes/modules/emarket/__custom_adm.php scriere onImplement) metoda (.
Ca urmare, fila va avea nume normale.
În trecerea la noua filă, vom primi un mesaj de eroare:
Resursa solicitată nu există
Această problemă a fost rezolvată, trebuie să descriem fila nostru ca funcții (în același fișier __custom_adm.php):
Pentru afișarea datelor de pe fila, creați un fișier /styles/skins/mac/data/modules/emarket/list.view.custom.xsl. care descrie modelul pentru filele: