porcelanosa/yii2-posts

该模块主要用于后端,但也部分用于前端。

安装: 16

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

开放问题: 0

类型:yii2-extension

dev-master 2017-11-21 21:45 UTC

This package is not auto-updated.

Last update: 2024-09-15 04:20:56 UTC


README

用于不同类型帖子(如文章、新闻、博客文章等)的模块。 ERR Diagram

依赖关系

    use \kartik\switchinput\SwitchInput;
    use mihaildev\ckeditor\CKEditor;
    use mihaildev\elfinder\ElFinder;
    
"porcelanosa/yii2-toggle-column": "*",

安装

1. 运行composer

composer require porcelanosa/yii2-posts

2. 常规配置

添加到 'common/config/main.php'

 
    ......
    'modules' => [
        'posts' => [
            'class' => 'porcelanosa\posts\Module',
        ],
    ],
    ......

3. 后端配置

添加到 'backend/config/main.php

'module' => [
    ...
    'posts' => [
        'class'  => 'porcelanosa\posts\Module',
            'controllerMap' => [
                'cpposts' => [
                    'class'     => 'porcelanosa\posts\controllers\AdminController',
                    'as access' => [
                        'class' => \yii\filters\AccessControl::className(),
                        'rules' => [
                            [
                                'allow' => true,
                                'roles' => ['admin'],
                                ],
                            ],
                        ],
                    ],
                ],
            ],
    ...

如果你将CintrollerMap名称从'cpposts'重命名,你必须也将 'modules/posts/views/cppost/' 文件夹重命名。

4. 迁移

运行迁移

yii migrate --migrationPath=@vendor/porcelanosa/yii2-posts/migrations

5. 路由

向UrlManager添加规则,例如:

// posts with post_types 'articles'
[
    'pattern' => 'articles',
    'route' => 'posts/default/index',
    'defaults' => ['post_type_slug' => 'articles'],
],
[
    'pattern' => 'articles/<cat_slug>/<slug>',
    'route' => 'posts/default/view',
    'defaults' => ['post_type_slug' => 'articles'],
],
// posts with post_types 'news'
[
    'pattern' => 'news',
    'route' => 'posts/default/index',
    'defaults' => ['post_type_slug' => 'news'],
],
[
    'pattern' => 'news/<cat_slug>/<slug>',
    'route' => 'posts/default/view',
    'defaults' => ['post_type_slug' => 'news'],
],
//'confirm-order' => 'cart/confirmorder',
// Posts
[
    'pattern' => 'posts/<post_type_slug>/<cat_slug>/<slug>',
    'route' => 'posts/default/view'
],
[
    'pattern' => 'posts/<post_type_slug>/<cat_slug>',
    'route' => 'posts/default/catview'
],
[
    'pattern' => 'posts/<post_type_slug>',
    'route' => 'posts/default/index'
],

或者对 'posts/default/view' 路由不同

6. 将模块添加到启动文件

添加

'bootstrap'           => ['posts'],

到 common/config/main.php