DedeCMS织梦增加TAG属性分类及调用
DedeCMS的TAG标签不是很灵活,有时候我们的标签需要进行一个分类,能不能像{dede:arclist}标签的自定义属性(如:flag='c,h'),这样全站调用的时候更灵活。
前面写过一篇文章《DedeCMS织梦增加TAG标签描述》,再拓展一下就行,有看不懂的步骤那篇文章写得详细些。
全站调用TAG标签方法一般是
{dede:tag row='100' sort='new' getall='1'} <a target="_blank" href='[field:link/]'>[field:tag /]</a> {/dede:tag} |
默认的只有以下参数
row:调用条数 sort:排序方式 month,rand,week getall:获取类型 0 为当前内容页TAG标记,1为获取全部TAG标记
数据库部分
用Navicat数据库管理工具打开dede_tagindex数据表(默认的表前缀),依次点击文件 -> 设计表。新增
字段:addtagtype 类型:int 长度:10
也可以用sql命令
alter table `dede_tagindex` add `addtagtype` int(10) NOT NULL default ''; |
后台部分
打开后台/dede/tags_main.php,大概在27行找到
$dlist->SetParameter("tag", $tag); |
下面增加
$dlist->SetParameter("addtagtype", $addtagtype); //by www.dede58.com |
大概在49行找到(下面红色的分隔符请去除)
$query = "UPDATE `#分隔符@__tagindex` SET `count`='$count' WHERE id='$tid' "; |
修改为
$query = "UPDATE `#分隔符@__tagindex` SET `count`='$count',`addtagtype`='$addtagtype' WHERE id='$tid' "; |
大概在147行找到
$query = " INSERT INTO `#分隔符@__tagindex`(`tag`,`count`,`total`,`weekcc`,`monthcc`,`weekup`,`monthup`,`addtime`) VALUES('$keyword','0','1','0','0','$timestamp','$timestamp','$timestamp');"; |
修改为
$query = " INSERT INTO `#分隔符@__tagindex`(`tag`,`addtagtype`,`count`,`total`,`weekcc`,`monthcc`,`weekup`,`monthup`,`addtime`) VALUES('$keyword','$tagms','0','1','0','0','$timestamp','$timestamp','$timestamp');"; |
打开/dede/templets/tags_main.htm,找到更新JS
function UpdateOne(tid) { location = "tags_main.php?action=update&count="+document.getElementById('count'+tid).value+"&tid="+tid; |
增加tagtype参数,代码修改为
function UpdateOne(tid) { location = "tags_main.php?action=update&count="+document.getElementById('count'+tid).value+"&addtagtype="+document.getElementById('tagtype'+tid).value+"&tid="+tid; |
找到
<td width="10%">标签</td> |
下面增加
<td width="10%">属性</td> |
找到
<td> <a href="../tags.php?/<?php echo urlencode($fields['tag']); ?>/" target="_blank">{dede:field.tag /}</a> </td> |
下面增加
<td> <input type='text' value='<?php echo $fields['addtagtype']; ?>' id='tagtype<?php echo $fields['id']; ?>' size='5'/> </td> |
(此图片来源于网络,如有侵权,请联系删除! )
这里的TAG属性可以根据自己的需要填写任意数字,比如属性是0、1。如果你觉得不直观,那就换成a,b,c之类的,只需要修改dede_tagindex数据表addtagtype数据类型为varchar,长度为255即可,方法就不详述了,下面是调用方法。
前端模板调用
{dede:sql sql="select * from dede_tagindex where addtagtype='1'"} 属性是1的内容:<a href="/tags?php/[field:tag/]/">[field:tag/]</a> {/dede:sql} {dede:sql sql="select * from dede_tagindex where addtagtype='0'"} 属性是0的内容:<a href="/tags?php/[field:tag/]/">[field:tag/]</a> {/dede:sql} |
里面的URL路径是默认写法,请根据自己的实际情况修改。数据表前缀请自行修改。
免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。
☉本站的源码不会像其它下载站一样植入大量的广告。为了更好的用户体验以后坚持不打水印
☉本站只提供精品织梦源码,源码在于可用,不在多!!希望在这里找到你合适的。
☉本站提供的整站织梦程序,均带数据及演示地址。可以在任一源码详情页查看演示地址
☉本站所有资源(包括源码、模板、素材、特效等)仅供学习与参考,请勿用于商业用途。
☉如有其他问题,请加网站客服QQ进行交流。
- dedecms SQL注入漏洞 member/album_add.php 修复
- dedecms cookies泄漏导致SQL漏洞 /member/article_add
- Windows虚拟主机指定目录禁用脚本执行权限方法
- 西部数码虚拟主机设置禁止脚本执行权限
- 阿里云主机设置织梦程序禁止脚本执行权限及禁止写入
- dedecms织梦导致CPU峰值现象的解决办法
- 织梦程序网站被挂马或快照劫持终极解决办法
- 阿里云提醒/member/reg_new.php注入漏洞解决办法
- 织梦安全:更改plus名称
- 织梦栏目属性增加链接rel、nofollow和新窗口target
- 织梦问答模块PHP7报错解决方法
- dedecms解决移动端首页不自动更新问题