Як створити власний плагін в OpenCart 2.1.x.x: частина 1

21

Від автора: розробнику завжди цікаво створити щось своє в якому-небудь фреймворку, те ж саме можна сказати і про плагіни для OpenCart. У цій серії з двох уроків я поясню, як створювати власні плагіни в OpenCart. Ми пройдемося по всіх деталей просунутої розробки в OpenCart для новачків, а також створимо невеликий плагін, щоб показати всі аспекти структури розробки в OpenCart.

У першому уроці ми створимо власний плагін, який буде показувати нещодавно переглянуті товари на стороні back-end’а. Змінити кількість товарів можна на стороні back-end’а. Мета сьогоднішнього уроку – розробити back-end плагін з формою конфігурацій.

Передбачається, що у вас вже встановлена остання версія OpenCart. На момент написання статті це була версія 2.1.0.2. Перед самою розробкою плагіна я хочу розповісти вам про базову архітектуру плагінів в OpenCart.

Коротко про шаблоні MVCL

OpenCart спроектований по одному із самих популярних шаблонів веб-розробки MVC з невеликими змінами або, можна сказати, доповненнями. Це додаток перетворює шаблон в MVCL. Можливо, ви вже чули про даному шаблоні, але я все одно швидко пробегусь по ньому для новачків.

Буква M в MVC розшифровується як модель, саме там розташована майже вся логіка. У контексті OpenCart модель взаємодіє з абстрактним шаром бази даних і виконує всю важку роботу, необхідну для роботи магазину. Велику частину часу ви будете проводити в моделі.

Як створити власний плагін в OpenCart 2.1.x.x: частина 1

Інтернет-магазин на OpenCart!

Створити інтернет-магазин на самій популярної CMS OpenCart з нуля!

Приступити до створення

V розшифровується як подання – шар подання додатка. З назви зрозуміло, що даний шар працює тільки з логікою подання сторінок, отримує дані від інших верств і велику частину часу генерує XHTML вихідні дані. Програмний код в цьому шарі краще не писати. Подання має дбати лише про те, що робити, а не як це робити.

C – контролер MVC, обробляє всі запити. Цей шар охоплює більшу частину логіки додатка: від обробки та валідації даних, що вводяться до завантаження відповідної моделі та виду для підготовки сторінки на висновок.
Нарешті, є додатковий компонент L, який розшифровується як мова. З його допомогою набагато легше створювати багатомовні сайти.

Це був швидкий огляд архітектури OpenCart. Як тільки ми почнемо більш докладно розбирати всі компоненти, вам стане все набагато зрозуміліше.

Скелет кожного плагіна в OpenCart

Давайте поглянемо на те, які файли нам знадобляться для створення користувальницького back-end плагіна.

admin/language/english/module/recent_products.php: файл, в якому зберігаються статичні назви, які використовуються в адмінці.

admin/controller/module/recent_products.php: файл контролера, в якому зберігається логіка програми нашого модуля.

admin/view/template/module/recent_products.tpl: файл-шаблон подання з XHTML кодом.

В наступній секції ми створимо всі ці файли і детально їх розглянемо. Згідно з оголошенням вище, файли інтерфейсу плагіна повинні бути в папці module. Так як це back-end плагін, то цю папку потрібно шукати в папці admin. У відповідності з архітектурою, описаної вище, всі файли розкидані по різних каталогах або компонентів.

Створюємо файли для back-end плагіна

У цьому розділі ми будемо створювати файли модуля. Першим ми створимо файл мови admin/language/english/module/recent_products.php з таким кодом. Вкрай важливий файл, так як OpenCart повинен знайти його в вашому плагіні.