purt09/yii2-pages

静态页面模块通过 Imperavi Redactor 实现 CRUD。

安装: 0

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 0

分支: 23

类型:yii2-extension

1.4.1 2020-05-27 16:45 UTC

This package is auto-updated.

Last update: 2024-09-12 14:34:03 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License Build Status Coverage Status

静态页面模块通过 Imperavi Redactor 实现 CRUD。

安装

安装此扩展的首选方式是通过 composer

运行以下命令

php composer.phar require --prefer-dist bupy7/yii2-pages "*"

或者在 composer.json 文件的 require 部分添加

"bupy7/yii2-pages": "*"

模块

安装

在配置文件中添加模块

'bootstrap' => ['pages'],

...

'modules' => [
    ...

    'pages' => 'bupy7\pages\Module',
]

为了应用迁移,您必须在控制台配置文件中添加上述配置

默认情况下,模块使用表名 '{{%page}}'。如果您的数据库中已存在此表,则更改它,并在模块配置中添加新表名

'modules' => [
    ...

    'pages' => [
        'class' => 'bupy7\pages\Module',
        'tableName' => '{{%your_table_name}}',
    ],
]

运行迁移

./yii migrate/up --migrationPath=@bupy7/pages/migrations

如果没有在控制台配置文件中添加模块,此命令将抛出异常。

使用方法

模块中有两个控制器:defaultmanager

manager 用于控制面板外部的页面。您需要通过 controllerMap 保护控制器或通过 AccessControl 覆盖它以添加行为。

示例

'modules' => [
    ...

    'pages' => [
        'class' => 'bupy7\pages\Module',
        
        ...

        'controllerMap' => [
            'manager' => [
                'class' => 'bupy7\pages\controllers\ManagerController',
                'as access' => [
                    'class' => AccessControl::className(),
                    'rules' => [
                        [
                            'allow' => true,
                            'roles' => ['admin'],
                        ],
                    ],
                ],
            ],
        ],
    ],
],

default 用于在网站上显示页面。您需要添加 URL 规则到配置文件,通过别名页面获取内容。

示例

'urlManager' => [
    'rules' => [
        ...

        'pages/<page:[\w-]+>' => 'pages/default/index',
    ],
],

如果启用,您可以通过 Imperavi Redactor 上传和添加文件/图片。

'modules' => [
    ...
    
    'pages' => [
        'class' => 'bupy7\pages\Module',
        
        ...

        'pathToImages' => '@webroot/images',
        'urlToImages' => '@web/images',
        'pathToFiles' => '@webroot/files',
        'urlToFiles' => '@web/files',
        'uploadImage' => true,
        'uploadFile' => true,
        'addImage' => true,
        'addFile' => true,
    ],
],

在 Imperavi redactor 中设置自定义语言

'modules' => [
    ...

    'pages' => [
        'class' => 'bupy7\pages\Module',
        'imperaviLanguage' => 'es',
    ],
]

这里有一个所有语言的列表:/vendor/vova07/yii2-imperavi-widget/src/assets/lang

许可证

yii2-pages 在 BSD 3-Clause 许可证下发布。