Octobercms în limba rusă

Plugin-uri sunt baza pentru adăugarea de noi caracteristici ale CMS, apoi extins. Acest articol descrie procesul de înregistrare a plug-in-uri, care vă permite să declare funcțiile sale, cum ar fi componente sau pagini externe și meniuri. Exemple de ceea ce poate face un plug-in:

Structura plugin-ului

Toate plugin-uri sunt situate în subfolderul / plugins. Structura plugin este după cum urmează:

Dar nu toate plugin-urile trebuie să aibă o astfel de structură. De exemplu, în cazul în care dvs. de plugin oferă doar o componentă. conținutul său poate arăta astfel:

Notă: Dacă sunteți un dezvoltator de plugin pentru Marketplace. disponibilitatea de fișier actualizări / version.yaml necesare.

Spațiu de nume

fișier de înregistrare

fișier Plugin.php. denumit fișierul plugin-ul de înregistrare sau de înregistrare plugin. este script-ul de inițializare, care declară funcțiile de bază și conține informații despre plugin-ul. Acesta poate conține următoarele:

script de conectare trebuie să conțină o clasă numită plug. care extinde \ System \ Classes \ clasa PluginBase. Datele solicitate numai de clasa de înregistrare plugin-ul este pluginDetails (). exemplu:

metode acceptate

Următoarele metode pot fi conținute în fișierul plug-in de înregistrare:

Routing și inițializare

Fișierele de înregistrare plugin-ul poate conține două metode: de boot () și înregistrați (). Cu aceste metode, puteți face orice doriți: să înregistrați rute sau lega stivuitoare la evenimente.

registru () metodă se numește în mod direct în momentul în care se înregistrează plug. boot () metodă se numește chiar înainte de cererea de rutare. Astfel, în cazul în care acțiunea dvs. depinde de un alt plugin, ar trebui să utilizați metoda de descărcare. De exemplu, în metoda de pornire () Puteți extinde modelul:

Notă: Metodele de boot () și înregistrare () nu este numit în procesul de actualizare a plugin-ului pentru a evita greșelile critice.

Plug-in-uri pot conține fișiere routes.php. care poate fi o logică de rutare arbitrară. De exemplu:

determinarea dependenței

Lucrul pluginul poate depinde de alte plug-in-uri. Pentru a face acest lucru, selectați-le în proprietatea necesită $ în fișiere plug-in. exemplu:

Filtre personalizate Twig și funcțiile pot fi înregistrate în CMS folosind registerMarkupTags () metoda de plug-in de inregistrare. exemplu:

Plugin-uri se pot extinde meniul din partea administrativă a site-ului, imperative registerNavigation metoda () în fișierul plug-in. exemplu:

Puteți utiliza șirurile de localizare pentru etichetă. De asemenea, puteți restricționa accesul utilizatorilor la anumite elemente de meniu.

Personalizează context. pentru a afișa un submeniu în partea administrativă a site-ului.