OctoberCMS plugin и Composer

Команды composer'a следует запускать внутри каталога плагина.

/plugin-root
├── /assets
├── /classes
├── /components
├── /controllers
├── /docs
├── /models
├── /updates
├── composer.json  <= вот этот товарищ
├── LICENSE
├── Plugin.php
└── README.md

Загрузка зависимостей начинается с корневого composer.json файла проекта, а потом загружаются composer.json файлы плагинов. Другими словами, плагин может добавить новый пакет и не может переопределить пакет корневого composer файла. Эта логика обрабатывается классом ComposerManager .

Примеры composer.json файлов официальных плагинов:

Когда плагин публикуется в OctoberCMS Marketplace, сервер самостоятельно создаёт /vendor папку, поэтому нет необходимости её публиковать, если вы планируете распространять плагин.


Другие записи из подборки «OctoberCMS. Backend.»

OctoberCMS. Ошибка RelationController: "Не удалось найти шаблон (partial) ... traits\ViewMaker.php"

В контроллере поведения RelationController при нажатии на кнопке "Cоздание" вылетает ошибка с подобным содержаним

"Не удалось найти шаблон (partial) с именем _comments.htm." on line 91
of ...\modules\system\traits\ViewMaker.php

Похожие записи

Собственные сообщения об ошибках валидации форм OctoberCMS

Во время разработки модели данных OctoberCMS при необходимости, можно использовать собственные сообщения об ошибках валидации полей формы вместо сообщения The :attribute field is required. по-умолчанию. В статье показывается как, достаточно просто, это делается.

FrontEnd контроллеры в OctoberCMS

В OctoberCMS нет концепции frontEnd контроллеров. Иными словами, идеология этой CMS не подразумевает возможность просто создать некий ProductController с несколькими action для обслуживания маршрутов Route::method('product/{id}', 'ProductController@show'). Вместо этого предлагается использовать компоненты плагинов. Именно компоненты являются формой frontEnd контроллеров.