{
    分享网正式开通,我们为大家提供免费资源,欢迎大家踊跃投稿!

DedeCMS不显示未审核文档Tag标签的方法

我们在使用DedeCMS后台发布文章的时候,当文档处于未审核状态时,依然会生成tag标签,而这个tag标签会在tag列表页中显示出来。如果我们点击这个tag标签,就会显示为空,这样对用户体验十分不好,算是DedeCMS的一个小Bug。

今天余斗就给出两种解决方法,来实现DedeCMS中未审核的文档Tags标签不显示在前端。

方法一:打开/include/taglib/tag.lib.php文件,找到代码(大概在第64行)


if(!empty($typeid))
                {
                        $addsql = " WHERE typeid='$typeid' ";
                }
 

修改为:


$dsql->SetQuery("Select tid From `dede_taglist` where arcrank<=-1");
                $dsql->Execute();
                $ids = '';
                while($row = $dsql->GetArray())
                {
                        $tid = $row['tid'];
                        $cquery = "Select count(*) as dd From `dede_taglist` where tid = $tid and arcrank<=-1";
                        $crow = $dsql->GetOne($cquery);
                        if(!$crow['dd'])
                        {
                                $ids .= ( $ids=='' ? $row['tid'] : ','.$row['tid'] );
                        }
                }
                if($ids != '')
                {
                        $addsql= " where id not in($ids) ";
                }
                if(!empty($typeid))
                {
                        if($addsql)
                        {
                                $addsql= " and typeid='$typeid' ";
                        }else{
                                $addsql= " where typeid='$typeid'" ;
                        }
                }
 

修改前

修改后

方法二:打开/include/taglib/tag.lib.php文件,找到代码(大概在第85行)


$row['keyword'] = $row['tag'];
 

在其前面加入:


$rankrowss = $dsql -> GetOne("SELECT count(tid) as rankcount FROM `js_taglist` WHERE tid = $row[id] and arcrank >= 0");
if($rankrowss[rankcount] == 0) continue;
 

修改前

修改后

通过以上两种方法都可以实现不显示未审核文档的tag,大家根据实际情况自己选择使用。


套路很深,不支持下载!


爱资源分享网 , 版权所有丨本站资源仅限于学习研究,严禁从事商业或者非法活动!丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:DedeCMS不显示未审核文档Tag标签的方法
喜欢 ()分享 (0)