From 7e54b56e66e909683fe700dc3a20927cfde0a92f Mon Sep 17 00:00:00 2001 From: Egorka Date: Wed, 5 Sep 2018 22:07:15 +0300 Subject: [PATCH] Init blog --- README.md | 22 ++++++++++- docs/develope/Modules.md | 81 --------------------------------------- docs/develope/README.md | 26 ------------- docs/developer/Modules.md | 98 +++++++++++++++++++++++++++++++++++++++++++++++ docs/developer/README.md | 27 +++++++++++++ docs/guide/README.md | 14 +++++++ 6 files changed, 159 insertions(+), 109 deletions(-) delete mode 100644 docs/develope/Modules.md delete mode 100644 docs/develope/README.md create mode 100644 docs/developer/Modules.md create mode 100644 docs/developer/README.md create mode 100644 docs/guide/README.md diff --git a/README.md b/README.md index f46093f..582f8d8 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,23 @@ -# Zertex CMS - Site management system based on Yii2 framework +Zertex CMS +========== +##Site management system based on Yii2 framework + +### Installation + +To install Zertex CMS, go to the web (web, www, public_html, etc.) folder of your site in the console and type +``` +composer create-project zertex/zxcms --keep-vcs +``` +After creating the project, type in the console +``` +php setup.php +``` +After completing the setup, the system will be available at the following urls ++ http://domain.com - Public website ++ http://admin.domain.com - Control Panel ++ http://static.domain.com - Image storage -## Alpha version Documentation is at [docs/guide/README.md](docs/guide/README.md). + +Developer russian documentation is at [docs/developer/README.md](docs/developer/README.md). \ No newline at end of file diff --git a/docs/develope/Modules.md b/docs/develope/Modules.md deleted file mode 100644 index 77d1122..0000000 --- a/docs/develope/Modules.md +++ /dev/null @@ -1,81 +0,0 @@ -### Модули - -Модули располагаются в папке `common/modules` - -Папка модуля должна содержать основной файл, например, `BlogModule.php` следующего содержания -```php -params['search_rules'][] = "SELECT title, content, CONCAT('/blog/manage/post/view/', id) AS url FROM {{blog_posts}}"; - - // Добавление правила роутинга - $app->getUrlManager()->addRules([ - 'blog' => 'blog/post/index', - ]); - - // Добавление правил роутинга, в случае использования классов - $app->getUrlManager()->addRules([ - ['class' => 'common\modules\blog\urls\BlogPostUrlRule'], - ['class' => 'common\modules\blog\urls\BlogCategoryUrlRule'], - ]); - - // Добавление локализации - $app->getI18n()->translations = ArrayHelper::merge($app->getI18n()->translations, [ - 'blog' => [ - 'class' => 'yii\i18n\PhpMessageSource', - 'basePath' => '@common/modules/blog/messages', - ], - 'blog_public' => [ - 'class' => 'yii\i18n\PhpMessageSource', - 'basePath' => '@common/modules/blog/messages', - ], - ]); - - // Добавление пунктов в меню администратора - if (basename($app->getBasePath()) === 'backend') { - $app->params['adminMenu'][] = [ - 'label' => \Yii::t( 'blog', 'Blog' ), - 'icon' => 'book', - 'items' => [ - [ - 'label' => \Yii::t( 'blog', 'Categories' ), - 'icon' => 'caret-right', - 'url' => [ '/blog/manage/category/index' ] - ], - [ - 'label' => \Yii::t( 'blog', 'Posts' ), - 'icon' => 'caret-right', - 'url' => [ '/blog/manage/post/index' ] - ], - [ - 'label' => \Yii::t( 'blog', 'Comments' ), - 'icon' => 'caret-right', - 'url' => [ '/blog/manage/comment/index' ] - ], - ], - 'visible' => \Yii::$app->user->can( 'admin' ) || \Yii::$app->user->can( 'BlogManagement' ) - ]; - } - } -} -``` \ No newline at end of file diff --git a/docs/develope/README.md b/docs/develope/README.md deleted file mode 100644 index 0168818..0000000 --- a/docs/develope/README.md +++ /dev/null @@ -1,26 +0,0 @@ -# Zertex CMS -Система управления сайтом на Yii2 - -**Для разработчика** - -* [Модули](Modules.md) - -#### Дополнительные параметры Yii::$app - -1. `$app->params['search_rules']` - Массив правил для поиска. - -Пример: -```php -$app->params['search_rules'][] = "SELECT title, content, CONCAT('/blog/manage/post/view/', id) AS url FROM {{blog_posts}}"; -``` -Поиск осуществляется по полям TITLE и CONTENT. В качестве URL указывается ссылка на конкрутную запись. - -Если название полей отличаются от TITLE и CONTENT, но, сгласно правилам SQL, указывайте ваше поле, затем `as TITLE` или `as CONTENT` - -#### Параметры настроек - -1. `Yii::$app->params['settings']['site']['short_name']` - Аббревиатура сайта в панели управления - -2. `Yii::$app->params['settings']['site']['name']` - Название сайта в панели управления - -3. `Yii::$app->params['settings']['design']['theme']` - Тема сайта \ No newline at end of file diff --git a/docs/developer/Modules.md b/docs/developer/Modules.md new file mode 100644 index 0000000..9a537e0 --- /dev/null +++ b/docs/developer/Modules.md @@ -0,0 +1,98 @@ +### Модули + +Модули располагаются в папке `common/modules` + +После установки папка с модулями содержит только обязательные системные модули. + +**Для добавления готовых модулей сделайте следующее:** ++ Создайте в папке `common/modules` папку с названием выбранного модуля ++ Перейдите в эту папку в консоли ++ Клонируйте в нее модуль, например для блога +```bash +git clone https://gitlab.com/zertex/zxcms-blog.git . +``` +После клонирования перейдите в контрольной панели к списку модулей. +Будет создана запись в таблице `module` о данном модуле. После его включения автоматически будут применены миграции модуля. + +**Создание нового модуля** + +Создайте в папке `common/modules` папку с названием модуля. +Название должно состоять из строчных букв латинского алфавита и цифр. + +Папка модуля должна содержать основной файл, например, `BlogModule.php` следующего содержания +```php +params['search_rules'][] = "SELECT title, content, CONCAT('/blog/manage/post/view/', id) AS url FROM {{blog_posts}}"; + + // Добавление правила роутинга + $app->getUrlManager()->addRules([ + 'blog' => 'blog/post/index', + ]); + + // Добавление правил роутинга, в случае использования классов + $app->getUrlManager()->addRules([ + ['class' => 'common\modules\blog\urls\BlogPostUrlRule'], + ['class' => 'common\modules\blog\urls\BlogCategoryUrlRule'], + ]); + + // Добавление локализации + $app->getI18n()->translations = ArrayHelper::merge($app->getI18n()->translations, [ + 'blog' => [ + 'class' => 'yii\i18n\PhpMessageSource', + 'basePath' => '@common/modules/blog/messages', + ], + 'blog_public' => [ + 'class' => 'yii\i18n\PhpMessageSource', + 'basePath' => '@common/modules/blog/messages', + ], + ]); + + // Добавление пунктов в меню администратора + if (basename($app->getBasePath()) === 'backend') { + $app->params['adminMenu'][] = [ + 'label' => \Yii::t( 'blog', 'Blog' ), + 'icon' => 'book', + 'items' => [ + [ + 'label' => \Yii::t( 'blog', 'Categories' ), + 'icon' => 'caret-right', + 'url' => [ '/blog/manage/category/index' ] + ], + [ + 'label' => \Yii::t( 'blog', 'Posts' ), + 'icon' => 'caret-right', + 'url' => [ '/blog/manage/post/index' ] + ], + [ + 'label' => \Yii::t( 'blog', 'Comments' ), + 'icon' => 'caret-right', + 'url' => [ '/blog/manage/comment/index' ] + ], + ], + 'visible' => \Yii::$app->user->can( 'admin' ) || \Yii::$app->user->can( 'BlogManagement' ) + ]; + } + } +} +``` \ No newline at end of file diff --git a/docs/developer/README.md b/docs/developer/README.md new file mode 100644 index 0000000..1b8b841 --- /dev/null +++ b/docs/developer/README.md @@ -0,0 +1,27 @@ +Zertex CMS +========== +###Система управления сайтом + +**Для разработчика** + +* [Модули](Modules.md) + +#### Дополнительные параметры Yii::$app + +1. `$app->params['search_rules']` - Массив правил для поиска. + +Пример: +```php +$app->params['search_rules'][] = "SELECT title, content, CONCAT('/blog/manage/post/view/', id) AS url FROM {{blog_posts}}"; +``` +Поиск осуществляется по полям TITLE и CONTENT. В качестве URL указывается ссылка на конкрутную запись. + +Если название полей отличаются от TITLE и CONTENT, но, сгласно правилам SQL, указывайте ваше поле, затем `as TITLE` или `as CONTENT` + +#### Параметры настроек + +1. `Yii::$app->params['settings']['site']['short_name']` - Аббревиатура сайта в панели управления + +2. `Yii::$app->params['settings']['site']['name']` - Название сайта в панели управления + +3. `Yii::$app->params['settings']['design']['theme']` - Тема сайта \ No newline at end of file diff --git a/docs/guide/README.md b/docs/guide/README.md new file mode 100644 index 0000000..2c2030c --- /dev/null +++ b/docs/guide/README.md @@ -0,0 +1,14 @@ +Zertex CMS +========== +###Система управления сайтом + +####Содержание ++ Установка ++ Настройка вебсервера ++ Первые шаги ++ Языки ++ Пользователи ++ Права доступа ++ Управление модулями ++ Шаблоны веб-сайта ++ Авторизация через социальные сети