arter / amos-tag
此包的最新版本(1.4.12)没有可用的许可信息。
Sistema AMOS per le TAG
1.4.12
2022-05-04 16:00 UTC
Requires
- php: >=5.4.0
- arter/amos-admin: >=1.8
- arter/amos-core: ~1.9
- arter/amos-dashboard: ~1.5
- creocoder/yii2-nested-sets: 0.9.*
- lispa/yii2-tree-manager: ~2.0.0
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-08 15:45:22 UTC
README
标签和兴趣领域的扩展。
安装
- 安装此扩展的首选方式是通过 composer。
运行以下命令之一
composer require arter/amos-tag
或将此行
"arter/amos-tag": "dev-master"
添加到您的 composer.json
文件的 require 部分。
将模块添加到后端主配置中
'modules' => [ 'tag' => [ 'class' => 'arter\amos\tag\AmosTag', 'modelsEnabled' => [ /** * Add here the classnames of the models for whose you want to enable tags * (i.e. 'arter\amos\news\models\News') */ ] ], ],
要启用用户配置文件兴趣领域(与内容标签匹配的标签),需要安装 amos-cwh
应用迁移
a. amos-tag 迁移
php yii migrate/up --migrationPath=@vendor/arter/amos-tag/src/migrations
或将此行添加到控制台中的迁移配置
return [ . . . '@vendor/arter/amos-tag/src/migrations', . . . ];
配置
标签管理适用于管理员角色 - 网址 PlatformUrl /tag/manager。在标签管理器中,您可以
- 添加新的树或标签
- 为特定模型启用标签树(通过根选择) - 对所有角色(rbac)或指定的角色
- 更改树设置,例如,根可见将允许用户在 TagWidget 中选择所有标签(见下文)
小部件
Amos Tag 提供了两个小部件
- TagWidget arter\amos\tag\widgets\TagWidget
将标签树绘制到选择模型的值。示例:在表单中使用echo arter\amos\tag\widgets\TagWidget::widget([ 'model' => $model, 'attribute' => 'tagValues', 'form' => \yii\base\Widget::$stack[0], 'singleFixedTreeId' => $treeRoot, 'id' => 'third-tree', 'hideHeader' => true ]);
在搜索表单中,您可以使用具有以下选项的相同小部件
$params = \Yii::$app->request->getQueryParams();
echo \arter\amos\tag\widgets\TagWidget::widget([
'model' => $model,
'attribute' => 'tagValues',
'form' => $form,
'isSearch' => true,
'form_values' => isset($params[$model->formName()]['tagValues']) ? $params[$model->formName()]['tagValues'] : []
]);
如果未指定 singleFixedTreeId,则考虑 $model 的所有启用的树(表 tag_models_auth_items_mm)。现在 singleFixedTreeId 可能是一个数组(单固定树 ID 中的标签根将被考虑)。
- ShowTagsWidget arter\amos\tag\widgets\ShowTagsWidget
绘制模型的选定标签(在查看模式下)。可以指定一个树(属性 'rootId')或一组树(属性 'rootIdsArray')以显示;如果未指定,则考虑模型的所有启用的树。示例
<?= \arter\amos\tag\widgets\ShowTagsWidget::widget([
'model' => $model,
'rootId' => $rootId
]) ?>