Yii2-plugins-system is designed to work out of the box. It means that installation requires minimal steps. Only one configuration step should be taken and you are ready to have plugin system on your Yii2 website.
Yii2-plugins-system can be installed using composer. Run following command to download and install Yii2-plugins-system:
composer require "loveorigami/yii2-plugins-system": ">=3.*"
The last thing you need to do is updating your database schema by applying the
migrations. Make sure that you have properly configured db
application component,
add in our console config namespace migration - more here
return [
'controllerMap' => [
'migrate' => [
'class' => 'yii\console\controllers\MigrateController',
'migrationNamespaces' => [
...
'lo\plugins\migrations'
],
],
],
];
and run the following command:
$ php yii migrate
Let's start with defining module in @backend/config/main.php
:
'modules' => [
'plugins' => [
'class' => 'lo\plugins\Module',
'pluginsDir'=>[
'@lo/plugins/core', // default dir with core plugins
// '@common/plugins', // dir with our plugins
]
],
],
That's all, now you have module installed and configured in advanced template.
Next, open @frontend/config/main.php
and add following:
...
'bootstrap' => ['log', 'plugins'],
...
'components' => [
'plugins' => [
'class' => lo\plugins\components\PluginsManager::class,
'appId' => 1 // lo\plugins\BasePlugin::APP_FRONTEND,
// by default
'enablePlugins' => true,
'shortcodesParse' => true,
'shortcodesIgnoreBlocks' => [
'<pre[^>]*>' => '<\/pre>',
//'<div class="content[^>]*>' => '<\/div>',
]
],
'view' => [
'class' => lo\plugins\components\View::class,
]
...
]
Also do the same thing with
@backend/config/main.php
@console/config/main.php
@api/config/main.php
...
'bootstrap' => ['log', 'plugins'],
...
'components' => [
'plugins' => [
'class' => lo\plugins\components\PluginsManager::class,
'appId' => 2 // lo\plugins\BasePlugin::APP_BACKEND or our appId
],
'view' => [
'class' => lo\plugins\components\View::class,
]
...
]
lo\plugins\BasePlugin::
Anyone and everyone is welcome to contribute. Please take a moment to review the guidelines for contributing.
Yii2-plugins-system is released under the MIT License. See the bundled https://github.com/loveorigami/yii2-plugins-system/blob/master/LICENSE.md for details.
Comments