afzalroq / yii2-unit
Yii2 单元扩展
v1.1.0
2020-11-25 15:31 UTC
Requires
- abdualiym/yii2-language: ^1.0
- kartik-v/yii2-widget-fileinput: @dev
- masterexploder/phpthumb: dev-master
- mihaildev/yii2-elfinder: *
- sadovojav/yii2-ckeditor: dev-master
- yii-dream-team/yii2-upload-behavior: ^1.2.3
- yiisoft/yii2: ~2.0
Requires (Dev)
- phpunit/phpunit: 4.*
README
该扩展允许管理HTML内容、文件、图片的块。
安装
- 使用composer安装
composer require afzalroq/yii2-unit "^1.1"
- 在composer安装后 运行控制台命令以创建表
php yii migrate/up --migrationPath=@vendor/afzalroq/yii2-unit/migrations
- 在公共配置存储和语言配置中设置。
语言索引与数据库列相关。
管理员面板选项卡按数组值顺序渲染。
起始id参数值为0。
'modules' => [ 'unit' => [ // don`t change module key 'class' => '@afzalroq\unit\Module', 'storageRoot' => $params['staticPath'], 'storageHost' => $params['staticHostInfo'], 'thumbs' => [ // 'sm' and 'md' keys are reserved 'admin' => ['width' => 128, 'height' => 128], 'thumb' => ['width' => 320, 'height' => 320], ], 'languages' => [ 'ru' => [ 'id' => 0, 'name' => 'Русский', ], 'uz' => [ 'id' => 1, 'name' => 'English', ], ], ], ]
- 在管理员面板中添加以下链接以管理类别和块
/unit/categories/index /unit/units/index?slug=your_category_slug_name
要使用BlockController操作,必须在路由中手动指定其类别缩略名。
###示例
扩展注册以下语言数组到 Yii::$app->params[] 以在视图中使用
\Yii::$app->params['cms']['languageIds'][$prefix] = $language['id']; [ 'en' => 2, 'ru' => 1, ... ] \Yii::$app->params['cms']['languages'][$prefix] = $language['name']; [ 'en' => 'English', ... ] \Yii::$app->params['cms']['languages2'][$language['id']] = $language['name']; [ 2 => 'English', ... ]
###前端小部件集成
按类别缩略名获取所有块
afzalroq\unit\entities\Unit::getBySlug($slug)
获取当前应用语言的每个块数据
$units = Unit::getBySlug($slug);
foreach ($units as $unit) {
echo ($blockObject->getModelByType())->get();
}
待办事项
- 从扩展根目录复制示例小部件以进行前端集成