首页  »  站长资讯  »  网站优化

如何让织梦DedeCMS的TAG标签按栏目显示 只显示当前栏目标签

2023/03/11 12:26     创新屋收录网     已浏览358次
织梦DedeCMS TAG标签按栏目显示(只显示当前栏目标签),用TAG标签的时候就遇到一些根据自己需要的方式来实现调用,今天我就为大家分享一下:如何让DEDE的TAG标签按栏目显示,只显示当前栏目的所有标签。

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

找到下面这段代码,对照下面的代码把红色代码//自定义添加标签  //自定义添加标签结束   内的代码对应着添加到php文件内,注;其它代码均无需改动、

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

    {

    $dsql->SetQuery("Select tid From `ddmx_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 getall = 2  既可以调用当前栏目下的 tag

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

    [field:tag /]

    {/dede:tag}

调用当前文章的 tag getall = 0  既可以调用当前栏目下的 tag

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

    [field:tag /]

    {/dede:tag}