bupy7/yii2-pages

This package is abandoned and no longer maintained. No replacement package was suggested.

A static pages module implements CRUD using Imperavi Redactor.

Installs: 7 178

Dependents: 1

Suggesters: 0

Security: 0

Stars: 15

Watchers: 4

Forks: 23

Open Issues: 3

Type:yii2-extension

1.4.1 2020-05-27 16:45 UTC

This package is auto-updated.

Last update: 2021-06-27 19:08:07 UTC


README

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

A static pages module implements CRUD using Imperavi Redactor.

Installation

The preferred way to install this extension is through composer.

Either run

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

or add

"bupy7/yii2-pages": "*"

to the require section of your composer.json file.

Installation

Add module in your config file:

'bootstrap' => ['pages'],

...

'modules' => [
    ...

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

You must add the above config in your console config file to apply migrations.

By default module uses table name '{{%page}}'. If in your database this table is exist - change it adding to configuration of module new table name:

'modules' => [
    ...

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

Run migration

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

Without module in console config file this command will throw an exception.

Usage

In module two controllers: default and manager.

manager need for control the pages out of the control panel. You need protect it controller via controllerMap or override it for add behavior with AccessControl.

Example:

'modules' => [
    ...

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

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

default for display of pages to site. You need add url rules to file of config for getting content via aliases pages.

Example:

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

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

You can upload and add files/images via Imperavi Redactor, if enable it:

'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,
    ],
],

Set up the custom language at Imperavi redactor:

'modules' => [
    ...

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

There is all list a languages here: /vendor/vova07/yii2-imperavi-widget/src/assets/lang.

License

yii2-pages is released under the BSD 3-Clause License.