dede tag不以关键词作为url以数字作为url方法修改

dede tag不以关键词作为url以数字作为url方法修改

打开/include/taglib/tag.lib.php 查找以下代码:

$row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";


替换为:

$row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['id'])."/";



(以下修改适合V56版本,V57版本请自行参照修改)然后再修改 /include/arc.taglist.class.php 找到以下代码:

$this->TagInfos = $this->dsql->GetOne("Select * From `dede_tagindex` where tag like '{$this->Tag}' ");


替换为:

$this->TagInfos = $this->dsql->GetOne("Select * From `dede_tagindex` where id like '{$this->Tag}' ");



上面的代码可以实现整站所有地方调用的tag都是用如下的url形式:

/tags.php?/1/



采用这个方法以后,默认的单独tags页面中,title也会变成id的形式,这是不友好的,需要进行如下的替换:

找到taglist.htm中的所有:{dede:field.title /},把这个替换成:

{dede:list}[field:title/]{/dede:list}


这样就可以在标题或者其他地方调用出来tags的具体名称了。

tags列表页可使用的标签完善性如下,自己diy选择性替换到所需位置:

{dede:list}<a href="[field:link/]" title="[field:title/]">[field:title/]{/dede:list}


或用以下方式调用tag名称:

{dede:sql sql="select tag from dede_tagindex where id=~title~"}[field:tag/]{/dede:sql}


本文链接:https://jinmengqiang.cn/a/202107/44.html
免责声明:本站所有资源均来互联网收集,相关版权归其所有,本站仅供学习与参考,勿用于商业用途,请下载24小时内删除,如果觉得可以请支持正版软件,如有损害到您的权益,请及时联系我们处理。