dedecms系统TAG标签只调用当前栏目下TAG标签

时间:2023-08-09 12:00 浏览:0 评论:0
0

织梦tag标签默认是全站调用的,不能按栏目调用当前栏目的tag标签,那么如何让标签按栏目显示,只显示当前栏目的所有标签呢?网上找了些织梦朋友总结的方法,至此学技巧感觉织梦标签真的很强大。

下面就是修改和调用TAG标签的方法:

一、打开include/taglib/目录下的 tag.lib.php 文件

找到下面这段代码:

  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(!empty($typeid)) { $addsql = " WHERE typeid='$typeid' "; }

改为如下代码:

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' "; }  

红色部分就是要添加的代码。

以下部分代码是调用当前栏目TAG标签的方法。

TAG标签使用方法: {dede:tag sort='hot' getall='2'} [field:tag /] {/dede:tag}  

1. 本站所有资源来源于用户上传或网络,仅作为参考研究使用,如有侵权请邮件联系站长!
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. dedecms > dedecms系统TAG标签只调用当前栏目下TAG标签

用户评论