位置: IT常识 - 正文

织梦增加tag属性分类及调用(织梦添加文章如何修改高级参数)

编辑:rootadmin

推荐整理分享织梦增加tag属性分类及调用(织梦添加文章如何修改高级参数),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:织梦怎么添加相关,织梦怎么样,织梦怎么添加类目,织梦技巧,织梦怎么添加相关,织梦怎么添加相关,织梦生成速度,织梦tag标签怎么用,内容如对您有帮助,希望把文章链接给更多的朋友!

DedeCMS的TAG标签不是很灵活,有时候我们的标签需要进行一个分类,能不能像{dede:arclist}标签的自定义属性(如:flag='c,h'),这样全站调用的时候更灵活。

前面写过一篇文章《DedeCMS织梦TAG标签SEO描述功能开发》,再拓展一下就行,有看不懂的步骤那篇文章写得详细些。

全站调用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');";

修改为

织梦增加tag属性分类及调用(织梦添加文章如何修改高级参数)

$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路径是默认写法,请根据自己的实际情况修改。数据表前缀请自行修改。

免责

本文链接地址:https://www.jiuchutong.com/zhishi/310322.html 转载请保留说明!

上一篇:mysql中binlog的理解(mysqlbinlog -vvv)

下一篇:帝国CMS灵动标签PHP代码实现标签无限嵌套的效果(帝国cms灵动标签 PHP变量文章ID加减1)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络