Să ne punem sarcina de a face un modul care să instaleze pur și simplu componenta pe care am făcut-o cu dvs. în ultimul articol.
Toate modulele Bitrix sunt situate în / bitrix / module /, unitatea noastră nu este o excepție, și va fi de asemenea situate în același dosar.
Structura fișierelor necesare ale modulului:
- / bitrix / modules / module ID / - director rădăcină modul
- / admin / - directorul cu scripturi administrative ale modulului
- menu.php - fișier cu meniul administrativ al modulului
- / classes / - scripturi cu clase de module
- / general / - clase de module care nu depind de baza de date utilizată
- / mysql / - clase de module concepute să funcționeze numai cu MySQL
- / oracle / - clase de module concepute să funcționeze numai cu Oracle
- / lang / ID-ul / - directorul cu fișierele de limbă ale scripturilor modulului
- / admin / - directorul cu scripturi administrative ale modulului
- / install / - directorul cu fișierele utilizate pentru a instala și dezinstala modulul
- / admin / - director cu scripturi care conectează script-urile administrative ale modulului (script-uri de apelare)
- / admin / - director cu scripturi care conectează script-urile administrative ale modulului (script-uri de apelare)
- / db / - director cu script-uri SQL pentru instalarea / dezinstalarea bazei de date
- / mysql / - Scripturi SQL pentru instalarea / dezinstalarea tabelelor în MySQL
- / oracle / - Scripturi SQL pentru instalarea / dezinstalarea tabelelor în Oracle
- / images / - director cu imagini utilizate de modul; după instalarea modulului, acestea trebuie copiate în director / bitrix / images / module ID /
- / Modul ID / - directorul cu fișierele principale ale componentelor
- / lang / language ID / modul ID / - în acest director sunt fișierele lingvistice ale componentei modulului
ADMIN_MODULE_NAME este identificatorul modulului;
ADMIN_MODULE_ICON - cod HTML pentru pictograma mare a modulului afișat deasupra titlului paginii.
Structura modulului poate include orice alte fișiere și foldere pe care le doriți.
Definiți structura modulului nostru
Este evident că nu avem nevoie pentru a instala imagini, template-uri, precum și pentru rezolvarea problemei noastre nu are nevoie de scripturi administrative și script-uri care cauzează administrativă, de asemenea, nu au nevoie. Da, iar clasele noi din modul nu vor fi declarate.
Astfel, structura modulului va fi după cum urmează:
/ install /
/install/index.php
/install/step1.php
/install/unstep1.php
/ install / components / - Creați un folder particularizat pentru a găzdui componentele noastre
/ install / components / elements / - componenta noastră creată în articol Crearea unei componente simple Bitrix
Toate aceste structuri ar trebui să fie localizate în directorul / bitrix / modules / dev_module. Astfel dev_module va fi dosarul modulului nostru.
Fișierul principal, codul care este responsabil pentru buna modulul de instalare / dezinstalare - acesta /install/index.php codul său este după cum urmează:
Acest fișier creează o nouă clasă - clasa dev_module noastre ca descendent al CModule. Următoarea este definiția constructorului dev_module (), în care variabilele sunt definite pentru a afișa informații despre modulul din lista modulelor Bitrix.
Metoda DoInstall () va fi apelată când faceți clic pe butonul "Install" din lista de module din panoul de administrare.
În consecință, DoUninstall () - când faceți clic pe butonul "Ștergeți".
În metodele din această clasă, fișierele /install/step.php sunt numite într-un fel sau altul. /install/unstep.php. Acestea sunt fișiere care sunt afișate atunci când modulul este instalat și dezinstalat, respectiv.
Dacă aveți nevoie de o instalare în mai multe etape, ar trebui să creați fișierele step2.php, step3.php etc.
Codul fișierului este de mai jos: