This module provides a web interface for content management system and includes the following features:
The preferred way to install this extension is through composer.
Either run
php composer.phar require --prefer-dist yii2mod/yii2-cms "*"
or add
"yii2mod/yii2-cms": "*"
to the require section of your composer.json.
Database Migrations
Before usage this extension, we'll also need to prepare the database.
$ php yii migrate --migrationPath=@vendor/yii2mod/yii2-comments/migrations
$ php yii migrate --migrationPath=@vendor/yii2mod/yii2-cms/migrations
Module Setup
To access the module, you need to configure the modules array in your application configuration:
'modules' => [
'cms' => [
'class' => 'yii2mod\cms\Module',
],
],
You can then access to management section through the following URL:
Configure Url Manager
You need to configure the urlManager
array in your application configuration:
'components' => [
'urlManager' => [
'rules' => [
['class' => 'yii2mod\cms\components\PageUrlRule'],
]
],
],
Setup Page Action
Add to SiteController (or configure via $route
param in urlManager
):
public function actions()
{
return [
'page' => [
'class' => 'yii2mod\cms\actions\PageAction',
]
];
}
Now you can use this module with all available features.
froala editor
for manage cms pages, you can change editor configuration by the following code:List of options: https://www.froala.com/wysiwyg-editor/docs/options
Configuration example: https://github.com/froala/yii2-froala-editor#usage
'modules' => [
'cms' => [
'class' => 'yii2mod\cms\Module',
'froalaEditorOptions' => [
// your custom configuration
'clientPlugins' => [
],
'clientOptions' => [
],
'excludedPlugins' => [
],
],
],
],
Markdown Editor support:
'modules' => [
'cms' => [
'class' => 'yii2mod\cms\Module',
'enableMarkdown' => true,
// List of options: https://github.com/NextStepWebs/simplemde-markdown-editor#configuration
'markdownEditorOptions' => [
'showIcons' => ['code', 'table'],
],
],
],
You can insert your own widget on the page by the following steps:
namespace app\widgets;
use yii\base\Widget;
class MyWidget extends Widget
{
/**
* @inheritdoc
*/
public function run()
{
parent::run();
echo 'Text from widget';
}
/**
* This function used for render the widget
*
* @return string
*/
public static function show()
{
return self::widget();
}
}
[[\app\widgets\MyWidget:show]]
baseTemplateParams
property:public function actions()
{
return [
'page' => [
'class' => 'yii2mod\cms\actions\PageAction',
'baseTemplateParams' => [
'homeUrl' => 'your site home url',
'siteName' => Yii::$app->name
]
],
];
}
public function actions()
{
return [
'page' => [
'class' => 'yii2mod\cms\actions\PageAction',
'commentWidgetParams' => [
'maxLevel' => 1,
'dataProviderConfig' => [
'pagination' => [
'pageSize' => 10
],
],
]
]
];
}
For detail information about comments module please visit the following page
Does your business depend on our contributions? Reach out and support us on Patreon. All pledges will be dedicated to allocating workforce on maintenance and new awesome stuff.