织梦DedeMS只调用当前栏目Tag标签

前端之家收集整理的这篇文章主要介绍了织梦DedeMS只调用当前栏目Tag标签前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

下面是编程之家 jb51.cc 通过网络收集整理的代码片段。编程之家小编现在分享给大家,也给大家做个参考。

织梦 tag 标签默认是全站调用的,不能按栏目调用当前栏目的 tag 标签,那么如何让标签按栏目显示,只显示当前栏目的所有标签呢?织梦标签真的很强大,以简单、实用、开源而闻名,是国内最知名的 PHP 开源网站管理系统,不是浪得虚名,熟悉 Dedecms 开发的站长深有体会,好了就不墨迹了,下面告诉大家具体实现方法

一、打开 include/taglib/目录下的 tag.lib.PHP 文件找到下面这段代码

if($getall==0 && isset($refObj->Fields['tags']) && !empty($refObj->Fields['aid']))

修改为一下代码,注意对比文件的结束位置:

if($getall==0 && isset($refObj->Fields['tags']) && !empty($refObj->Fields['aid']))

{

$dsql->SetQuery("Select tid From `dede_taglist` where aid = '{$refObj->Fields['aid']}' ");

$dsql->Execute();

$ids = '';

while($row = $dsql->GetArray())

{

$ids .= ( $ids=='' ? $row['tid'] : ','.$row['tid'] );

}

if($ids != '')

{

$addsql = " where id in($ids) ";

}

if($addsql=='') return '';

}

 

else if($getall==2)

{

$addsql = " where typeid='{$refObj->Fields['typeid']}' ";

}

else

{

if(!empty($typeid))

{

$addsql = " where typeid='$typeid' ";

}

二、在模板里面调用,模板调用标签如下:

{dede:tag sort='hot' getall='2'}

<a href='[field:link/]'>[field:tag /]</a>

{/dede:tag}

以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

猜你在找的Dedecms相关文章