织梦123,专注于模板建站,让建站变得简单!QQ客服
织梦123-完整无错的dedecms织梦模板|网站源码下载站
当前位置 : 当前位置 :织梦123 > 织梦教程 > 织梦cms系统TAG标签只调用当前栏目标签

织梦cms系统TAG标签只调用当前栏目标签

织梦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标签的方法。
 
{dede:tag sort='hot' getall='2'}
<a href='[field:link/]'>[field:tag /]</a>
{/dede:tag}

【声明】织梦123除付费类源码经过测试外,其他素材未做测试,不保证完整性,网站上部分源码仅限学习交流,请勿用于商业用途。如损害你的权益请联系客服给予处理,谢谢支持。

最新模板推荐

二维码
意见反馈
×