cinghie / yii2-articles
Yii2 Articles - 用于在Yii2网站中创建、管理和删除文章。
0.6.6
2019-05-09 13:50 UTC
Requires
- cinghie/yii2-seo-component: @dev
- cinghie/yii2-traits: @dev
- yiisoft/yii2: ~2.0.14
README
Yii2 Articles - 用于在Yii2网站中创建、管理和删除文章。
- 创建、编辑和删除文章
- 带有附件、图片、相册和点击次数的文章
- 管理类别和子类别
- 高级访问权限
- 审批
- 多语言支持
- 额外字段管理
- SEO优化
安装
通过以下方式安装此扩展程序:通过composer。
运行以下命令:
$ php composer.phar require cinghie/yii2-articles "*"
或者添加以下内容:
"cinghie/yii2-articles": "*"
配置
1. 图片文件夹
将img文件夹复制到您的webroot
2. 更新yii2 articles数据库模式
确保已正确配置db
应用程序组件。
确保有一个id为1的用户。
运行以下命令
$ php yii migrate/up --migrationPath=@vendor/cinghie/yii2-articles/migrations
3. 设置配置文件
在配置文件的模块部分设置
'modules' => [
// Module Articles
'articles' => [
'class' => 'cinghie\articles\Articles',
'userClass' => 'dektrium\user\models\User',
// Select Languages allowed
'languages' => [
"it-IT" => "it-IT",
"en-GB" => "en-GB"
],
// Select Default Language
'languageAll' => 'it-IT',
// Select Date Format
'dateFormat' => 'd F Y',
// Select Editor: no-editor, ckeditor, imperavi, markdown, tinymce
'editor' => 'ckeditor',
// Select Path To Upload Category Image
'categoryImagePath' => '@webroot/img/articles/categories/',
// Select URL To Upload Category Image
'categoryImageURL' => '@web/img/articles/categories/',
// Select Path To Upload Category Thumb
'categoryThumbPath' => '@webroot/img/articles/categories/thumb/',
// Select URL To Upload Category Image
'categoryThumbURL' => '@web/img/articles/categories/thumb/',
// Select Path To Upload Item Image
'itemImagePath' => '@webroot/img/articles/items/',
// Select URL To Upload Item Image
'itemImageURL' => '@web/img/articles/items/',
// Select Path To Upload Item Thumb
'itemThumbPath' => '@webroot/img/articles/items/thumb/',
// Select URL To Upload Item Thumb
'itemThumbURL' => '@web/img/articles/items/thumb/',
// Select Path To Upload Attachments
'attachPath' => '@webroot/attachments/',
// Select URL To Upload Attachment
'attachURL' => '@web/img/articles/items/',
// Select Image Types allowed
'attachType' => ['jpg','jpeg','gif','png','csv','pdf','txt','doc','docs'],
// Select Image Name: categoryname, original, casual
'imageNameType' => 'categoryname',
// Select Image Types allowed
'imageType' => ['png','jpg','jpeg'],
// Thumbnails Options
'thumbOptions' => [
'small' => ['quality' => 100, 'width' => 150, 'height' => 100],
'medium' => ['quality' => 100, 'width' => 200, 'height' => 150],
'large' => ['quality' => 100, 'width' => 300, 'height' => 250],
'extra' => ['quality' => 100, 'width' => 400, 'height' => 350],
],
// Slugify Options
$slugifyOptions = [
'separator' => '-',
'lowercase' => true,
'trim' => true,
'rulesets' => [
'default'
]
],
// Show Titles in the views
'showTitles' => true,
],
],
]
4. 其他配置
为了方便使用此扩展程序,强烈建议安装并配置dektrium/yii2-user来管理用户
以及dektrium/yii2-rbac来管理认证权限
5. 将您的用户添加为管理员
INSERT INTO `PREFIX_auth_assignment` (`item_name`, `user_id`, `created_at`) VALUES
('admin', 'YUOR_USER_ID', 1451514052);
将PREFIX_替换为您的表前缀,将YUOR_USER_ID替换为您的user_id。例如
INSERT INTO `auth_assignment` (`item_name`, `user_id`, `created_at`) VALUES
('admin', '1', 1451514052);
高级模板推荐配置
URL规则
'components' => [
// Url Manager
'urlManager' => [
'class' => 'codemix\localeurls\UrlManager',
// All languages including the default language
'languages' => ['it', 'en'],
// The default language is now treated like any other configured language
'enableDefaultLanguageUrlCode' => true,
// Disable index.php
'showScriptName' => false,
// Disable r= routes
'enablePrettyUrl' => true,
// Disable site/ from the URL
'rules' => [
'<alias:index|about|contact>' => 'site/<alias>',
'<id:\d+>/<alias:[A-Za-z0-9 -_.]+>' => 'articles/categories/view',
'<cat>/<id:\d+>/<alias:[A-Za-z0-9 -_.]+>' => 'articles/items/view',
'<tags>/<id:\d+>/<alias:[A-Za-z0-9 -_.]+>' => 'articles/tags/view'
],
],
],
过滤器
如果您有一个Yii2 App高级(前端/后端),您可以排除前端操作
'modules' => [
'articles' => [
'class' => 'cinghie\articles\Articles',
'as frontend' => 'cinghie\articles\filters\FrontendFilter',
]
],
覆盖
覆盖控制器示例,在模块配置中
'modules' => [
'articles' => [
'class' => 'cinghie\articles\Articles',
'controllerMap' => [
'items' => 'app\controllers\MyItemsController'
]
]
],
覆盖模型示例,在模块配置中
'modules' => [
'articles' => [
'class' => 'cinghie\articles\Articles',
'modelMap' => [
'Items' => 'app\models\MyItemsModel'
]
]
],
覆盖视图示例,在组件配置中
'components' => [
'view' => [
'theme' => [
'pathMap' => [
'@cinghie/articles/views/items' => '@app/views/articles/items',
],
],
],
],
覆盖示例可以在overrides文件夹中找到
用户认证
文章权限
类别权限
标签权限
用户类型
迁移向数据库添加4种用户类型
- 管理员
- 可以创建类别
- 可以发布类别
- 可以删除类别
- 可以更新类别
- 可以索引类别
- 可以创建文章
- 可以发布所有文章
- 可以更新所有文章
- 可以删除所有文章
- 可以索引所有文章
- 可以查看所有文章
- 可以创建标签
- 可以发布标签
- 可以删除标签
- 可以更新标签
- 可以索引标签
- 编辑器
- 可以创建类别
- 不能发布类别
- 不能删除类别
- 可以更新类别
- 可以索引类别
- 可以创建文章
- 可以发布他的文章
- 可以更新所有文章
- 可以删除他的文章
- 可以索引文章
- 可以查看所有文章
- 可以创建标签
- 可以发布标签
- 可以删除标签
- 可以更新标签
- 可以索引标签
- 发布者
- 不能创建类别
- 不能发布类别
- 不能删除类别
- 不能更新类别
- 可以索引类别
- 可以创建文章
- 可以发布他的文章
- 可以更新他的文章
- 可以删除他的文章
- 可以索引他的文章
- 可以查看所有文章
- 可以创建标签
- 可以发布标签
- 可以更新标签
- 可以索引标签
- 作者
- 不能创建类别
- 不能发布类别
- 不能删除类别
- 不能更新类别
- 可以索引类别
- 可以创建文章
- 不能发布他的文章
- 可以更新他的文章
- 不能删除文章
- 不能索引文章
- 可以查看文章
- 可以创建标签
链接
- 管理员面板:PathToApp/index.php?r=articles
- 具有漂亮URL的管理面板:PathToApp/articles
- 类别:PathToApp/index.php?r=articles/categories
- 具有漂亮URL的类别:PathToApp/articles/categories
- 项目:PathToApp/index.php?r=articles/items
- 具有漂亮URL的项目:PathToApp/articles/items
- 附件:PathToApp/index.php?r=articles/attachments
- 具有漂亮URL的附件:PathToApp/articles/attachments
- 标签:PathToApp/index.php?r=articles/tags
- 具有漂亮URL的标签:PathToApp/articles/tags