К running in the back-end
Я думаю, вы создали пользовательский контроллер, модель и представление для какой-либо формы, где вы управляете своими новостями. Все в порядке.
Но поскольку это должен быть модуль, вам также необходимо создать часть бэкенда для этого модуля, чтобы его можно было установить и присвоить макету на определенных страницах. Самый простой способ, как сделать это, чтобы скопировать эти файлы:
admin/controller/module/banner.php
admin/language/<YOUR_LANGUAGE>/module/banner.php
admin/view/template/module/banner.php
в новый
admin/controller/module/aselsi.php
admin/language/<YOUR_LANGUAGE>/module/aselsi.php
admin/view/template/module/aselsi.php
и переименовать все имена классов, констант, модели и языка имена файлов из banner
в aselsi
. После этого Вы должны увидеть новый Aselsi модуль под Extensions> Модули в администрировании, где вы должны быть в состоянии присвоить этот модуль к страницам и позиций ...
Сразу хочу отметить, что простое копирование пасты + переименование недостаточно, вам придется отредактировать некоторые другие части, чтобы заставить их работать.
EDIT: Я сейчас не в коде, но да, вы правы, это имеет много общего с этой линией. Вы упоминаете в комментарии. Каждая установка модуля сохраняется как сериализованная строка (которая представляет собой сериализованный массив), который содержит настройки модуля - макет, положение, sort_order и т. Д. Ключ - это ключ модуля - aselsi
в вашем случае, так же как и все остальные модули имеют свои собственные модули. Только установка модуля Вы устанавливаете модуль активным, но вы можете показать модуль, сохранив его настройки. В frontend контроллеры для левой и правой колонны и верхнего и нижнего содержимого затем отображаются активных модулей, которые затем отображаются на этом макете и в этом положении.
Установка/удаление модуля (в бэкэнд) может быть расширена до, например, добавлять/удалять новые таблицы БД для этого модуля и/или изменять текущие таблицы БД (путем добавления новых столбцов и т. д.).) путем реализации методов install
и uninstall
с их соответствующей логикой.
Надеюсь, это простое объяснение поможет немного.
Хорошо, спасибо за ваш ответ. У меня действительно есть пользовательский контроллер blahblah. И я уже получил его в карте модуля, поэтому я уже установил его. Но я буду смотреть на код баннера, а затем скопировать и вставить (и отредактировать), и я увижу, как далеко я приеду. Благодаря! – Mathlight
Хорошо, это работает. Я понимаю, что это как-то связано с этой строкой: '$ this -> model_setting_setting -> editSetting ('aselsi', $ this -> request -> post);' но я не понимаю, как это заставило бы его работать. .. Но я выясню позже, теперь я рад, что он работает: D – Mathlight
Добро пожаловать. Я добавил простое объяснение того, как это работает. – shadyyx