在CMS文章详情页的Tag列表,默认是只支持使用Tag名称来生成链接,如果需要使用Tag的主键ID来链接,则需要做一下二次修改。
首先打开addons/cms/model/Archives.php
,找到getTaglistAttr
方法,修改为
public function getTaglistAttr($value, &$data){
if (isset($data['taglist'])) {
return $data['taglist'];
}
$tags = array_filter(explode(",", $data['tags']));
$tagList = Tag::where('name', 'in', $tags)->column('name,id');
$list = [];
foreach ($tags as $k => $v) {
$list[] = [
'name' => $v,
'url' => addon_url('cms/tag/index',
[':name' => $v, ':id' => isset($tagList[$v]) ? $tagList[$v] : '0'])];
}
$data['taglist'] = $list;
return $list;}
然后修改后台->CMS管理->站点配置->伪静态,找到tag/index
这一行,修改为
cms/t/[:id]
搞定。