織夢TAG標簽按欄目調用,只顯當前欄目tag標簽

閱讀 ?·? 發布日期 2019-05-26 12:24 ?·? admin
織夢tag標簽默認是全站調用的,不能按欄目調用當前欄目的tag標簽,那么如何讓標簽按欄目顯示,只顯示當前欄目的所有標簽呢?網上找了些織夢朋友總結的方法,至此跟版網感覺織夢標簽真的很強大。下面就是修改和調用TAG標簽的方法:
 
一、打開include/taglib/目錄下的 tag.lib.php 文件
 
找到下面這段代碼:

1 if($getall==0 && isset($refObj->Fields['tags']) && !empty($refObj->Fields['aid']))
靈活修改為下面代碼,注意對比文件的結束位置

01 if($getall==0 && isset($refObj->Fields['tags']) && !empty($refObj->Fields['aid']))
02     {
03             $dsql->SetQuery("Select tid From `dede_taglist` where aid = '{$refObj->Fields['aid']}' ");
04             $dsql->Execute();
05             $ids = '';
06             while($row = $dsql->GetArray())
07       {
08               $ids .= ( $ids=='' ? $row['tid'] : ','.$row['tid'] );
09             }
10             if($ids != '')
11             {
12                     $addsql = " where id in($ids) ";
13             }
14             if($addsql==''return '';
15     }
16      
17     else if($getall==2)
18     {
19     $addsql = " where typeid='{$refObj->Fields['typeid']}' ";
20     }
21     else
22     {
23             if(!empty($typeid))
24             {
25                     $addsql = " where typeid='$typeid' ";
26             }

以下部分代碼是調用當前欄目TAG標簽的方法。

查看源碼
 
打印代碼幫助
1 {dede:tag sort='hot' getall='2'}
2  
3 <a href='[field:link/]'>[field:tag /]</a>
4  
5 {/dede:tag}