panix/mod-plugins

模块插件

dev-master 2023-07-18 15:53 UTC

This package is auto-updated.

Last update: 2024-09-18 18:18:40 UTC


README

mod-plugins被设计为开箱即用。这意味着安装只需要最少的步骤。只需进行一个配置步骤,你就可以在你的Yii2网站上准备好插件系统。

1. 下载

可以使用composer安装mod-plugins。运行以下命令下载并安装mod-plugins

composer require "panix/mod-plugins": "*"

2. 更新数据库模式

你需要做的最后一件事是应用迁移来更新你的数据库模式。确保你已经正确配置了db应用程序组件,在我们的控制台配置命名空间迁移中添加 - 更多信息

return [
    'controllerMap' => [
        'migrate' => [
            'class' => 'panix\engine\console\controllers\MigrateController',
            'migrationNamespaces' => [
                 ...
                'panix\mod\plugins\migrations'
            ],
        ],
    ],
];

并运行以下命令

$ php yii migrate

3. 配置应用程序

让我们从在@app/config/main.php中定义模块开始

'modules' => [
    'plugins' => [
        'class' => 'panix\mod\plugins\Module',
        'pluginsDir'=>[
            '@panix/mod/plugins/core', // default dir with core plugins
            // '@common/plugins', // dir with our plugins
        ]
    ],
],

这就是全部,现在你已经在高级模板中安装并配置了模块。

接下来,打开@app/config/main.php并添加以下内容

...
'bootstrap' => ['log', 'plugins'],
...
'components' => [
    'plugins' => [
        'class' => panix\mod\plugins\components\PluginsManager::class,
        'appId' => panix\mod\plugins\BasePlugin::APP_WEB,
        // by default
        'enablePlugins' => true,
        'shortcodesParse' => true,
        'shortcodesIgnoreBlocks' => [
            '<pre[^>]*>' => '<\/pre>',
            //'<div class="content[^>]*>' => '<\/div>',
        ]
    ],
    'view' => [
        'class' => panix\mod\plugins\components\View::class,
    ]
    ...
]

也要对以下文件做同样的事情

  • @backend/config/main.php
  • @console/config/main.php
  • @api/config/main.php
  • 我们的模块
  • 等等...
...
'bootstrap' => ['log', 'plugins'],
...
'components' => [
    'plugins' => [
        'class' => panix\mod\plugins\components\PluginsManager::class,
        'appId' => panix\mod\plugins\BasePlugin::APP_BACKEND
    ],
    'view' => [
        'class' => panix\mod\plugins\components\View::class,
    ]
    ...
]

基本AppId panix\mod\plugins\BasePlugin::

  • const APP_WEB = 1;
  • const APP_BACKEND = 2;
  • const APP_COMMON = 3;
  • const APP_API = 4;
  • const APP_CONSOLE = 5;

核心插件(示例)

你的插件

作者 & 许可证

模块是从作者那里获取的,并针对Pixelion CMS进行了调整。