Вместо того, чтобы существовал какой-то "мастер создания модулей", неизбежно придется заниматься какой-то ручной работой.
Что бы я обычно делал (для SilverStripe 4), чтобы создать папку mymodule
в корневом проекте и начать в ней разработку.
Следующим шагом будет создание хранилища и определение файла composer.json с некоторыми основными требованиями (например, silverstripe / framework). Затем вы можете зафиксировать и отправить это, а затем включить его в проект SilverStripe 4 с помощью Composer (либо через конфигурацию хранилища VCS, либо через Packagist).
Отсюда, по крайней мере, есть место, где живет ваш код. Если вы настроили новый модуль как "type": "silverstripe-vendormodule"
, он будет установлен в vendor/yourname/yourmodule
. Вы можете изменить код здесь при необходимости.
Вы также можете определить тип как "type": "silverstripe-module"
, и он будет установлен в корне проекта. Большинство модулей идут по пути продавца в SilverStripe 4, поэтому желательно следовать этому примеру.
В SilverStripe 3 вы можете сделать то же самое, что и это, но поскольку установщик Composer для модулей SilverStripe 3 по умолчанию помещает их в корневой каталог проекта, вы можете создать произвольные имена папок, например mymodule
, в своем корневом проекте и сразу же приступить к разработке. в них.
Манифесты SilverStripe будут читать любую папку, в которой нет файла _manifest-exclude
, и в которой есть либо файл _config.php
, либо папка _config
, так что легко приступить к работе и вы всегда можете преобразовать в любой момент эту папку в свой собственный модуль удалите, затем включите снова с требованиями Composer. Вы можете сделать это и в SilverStripe 4.