diazoxide/yii2-blog ¶
Advanced Yii2 Blog module. Posts, Categories, Comments, Tags, With Slider Revolution, SEO tags, Social Tags
Features
- Blog Posts
- Title
- Slug
- Multiple Categories for each post
- Brief
- Content
- Custom Redactor/wysiwyg editor
- Books
- Chapters and sub Chapters
- Nested structure
- Nested breadcrumbs
- BBCode support
- Custom BBCode styling
- Blog Categories
- Blog Tags
- Blog Comments
- Custom Widgets
- Dynamic widgets
- Custom backend panel
- Custom Styling
- Custom Javascript
- Infinite Scroll for each widgted
- Category integration
- Slider Revolution
installation ¶
add to composer.json
{
"require": {
"diazoxide/yii2-blog": "dev-master"
}
}
common configuration
'modules'=>[
'blog' => [
'class' => "diazoxide\blog\Module",
'urlManager' => 'urlManager',
'imgFilePath' => dirname(__DIR__) . '/public/uploads/img/blog/',
'imgFileUrl' => '/uploads/img/blog/',
// You can change any view file for each route
'frontendViewsMap'=>[
'blog/default/index'=>'@app/views/blog/index'
],
// You can change any layout for each route
'frontendLayoutMap'=>[
'blog/default/view'=>'@app/views/layouts/main-with-two-sidebar',
'blog/default/archive'=>'@app/views/layouts/main-with-right-sidebar',
],
'homeTitle'=>'Blog title',
'userModel' => "\app\models\User",
'userPK' => 'id',
'userName' => 'username',
'showClicksInPost'=>false,
'enableShareButtons' => true,
'blogPostPageCount' => '10',
'schemaOrg' => [
'publisher' => [
'logo' => '/path/to/logo.png',
'logoWidth' => 200,
'logoHeight' => 47,
'name' => "Blog title",
'phone' => '+1 800 488 80 85',
'address' => 'Address 13/5'
]
]
],
]
backend configuration
$config['modules']['blog']['controllerNamespace'] = 'diazoxide\blog\controllers\backend';
Migration ¶
after install run migration command
php yii migrate --migrationPath=@vendor/diazoxide/yii2-blog/migrations
Custom urlManager rules for beautiful links ¶
archive url in frontend
category url in frontend
https://blog.com/category/politics
post url in frontend like a wordpress and seo friendly
https://blog.com/2019/11/21/your-post-slug
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
//F.E. https://blog.com/category/politics
'/category/<slug>' => '/blog/default/archive',
//F.E. https://blog.com/archive
'/archive' => '/blog/default/archive',
//F.E. https://blog.com/2019/11/21/your-post-slug
[
'pattern' => '<year:\d{4}>/<month:\d{2}>/<day:\d{2}>/<slug>',
'route' => '/blog/default/view',
'suffix' => '/'
],
],
],