Что такое модуль
Модуль в PearCMS — это самостоятельный пакет с собственным роутером, контроллерами, миграцией и панелью прав. Сейчас в комплекте 27+ модулей; их можно включать/выключать без удаления данных.
Что такое модуль #
Модуль — это каталог в modules/<Name>/ с фиксированной структурой. У него есть:
- Публичный фасад (
<Name>.php) — точка входа для маршрутов/<name>/*на сайте - Админ-роутер (
<Name>Router.php) — диспетчер/s-panel/<name>/* - FlagsPanel — декларация прав для каждого action
- migration.sql / uninstall.sql — DDL для своих таблиц и сидинг роутов/меню
- module.json — манифест: имя, версия, зависимости, иконка
Конвенция именования: PascalCase для папки и namespace (App\Modules\Banner), snake-case для таблиц (banner__items), kebab-case для URL (/s-panel/banner).
Каталог встроенных модулей #
| Модуль | Назначение |
|---|---|
Chat | Внутренний мессенджер админов: групповые чаты, реакции, закреплённые сообщения |
Social | Социальные интеграции, боты, рассылка |
Banner | Баннеры на публичной части (с расписанием и таргетингом) |
Calandary | Календарь событий и блокировок |
MNews | Новости/блог |
MGallery | Фотогалереи |
Otziv | Отзывы клиентов |
PersonalCabinet | Личный кабинет пользователя на сайте |
Support / SupportOnline | Тикет-система и онлайн-чат поддержки |
TaskCore | Менеджер задач для команды |
StoreMarket | Магазин/каталог товаров |
Kassa | Касса и заказы |
CBookingsAuto/Buy/Home/Moto/Record | Семейство модулей бронирования (аренда машин, мотов, жилья и т. п.) |
CmsBoard | Внутренняя доска объявлений |
CmsModules / CmsThemes | Магазин модулей и тем |
CmsVersion | Проверка обновлений и self-update CMS |
Loading | Прелоадер сайта |
Cookie | Cookie-баннер |
Metrica | Интеграции с Яндекс.Метрикой / Google Analytics |
Capcha | Капча на формы |
Fundraising | Сборы и пожертвования |
Vayher | Партнёрские интеграции |
Установка стороннего модуля #
Модули распространяются в виде ZIP-архивов. Пошагово:
- В админке: Модули (
/s-panel/modules) → «Загрузить». - Выберите ZIP — сервер распакует его в
modules/<Name>/и автоматически прогонит миграцию модуля (она же создаёт нужные таблицы в БД). - В таблицу
module_settingsдобавится записьenabled=1.
Если модуль платный — у него внутри есть проверка ключа, который вводится при первой активации. Подробнее — на странице «Менеджер модулей».
Дальше — «Анатомия модуля», где разберём внутреннюю структуру по файлам.
Эта страница была полезной?