欢迎来到素材无忧网,按 + 收藏我们
登录 注册 退出 找回密码

dedecms的tag标签列表中有分页却没有数据的处理方法

时间: 2020-09-15 09:33 阅读: 作者:素材无忧网

dedecms系统中,如果你的网站删除了很多文档,而某个Tag标签恰恰关联了这些被删除的文档,这种情况下,前台Tag标签列表页就会出现有页码分页却没有数据的状况,如下图所示

dedecms的tag标签列表中有分页却没有数据的处理方法(图1)

这是因为织梦的TAG标签列表核心文件不严谨引起的,我们可以让关联的TAG标签所属的已经删除的文档在TAG表中删除掉就能解决空数据列表问题

打开 /include/arc.taglist.class.php 找到,找到下面这3行代码

$cquery = "SELECT COUNT(*) AS dd FROM `dede_taglist` WHERE tid = '{$this->TagInfos['id']}' AND arcrank >-1 ";
$row = $this->dsql->GetOne($cquery);
$this->TotalResult = $row['dd'];

改成 

$this->dsql->SetQuery("SELECT aid FROM `dede_taglist` WHERE tid = '{$this->TagInfos['id']}' AND arcrank>-1 ");
$this->dsql->Execute();
while($row=$this->dsql->GetArray())
{
	$atrow = $this->dsql->GetOne("SELECT id FROM `dede_arctiny` WHERE id='{$row['aid']}' AND arcrank>-1");
	if(!is_array($atrow))
	{
		$this->dsql->ExecuteNoneQuery("DELETE FROM `dede_taglist` WHERE aid='{$row['aid']}' ");
		continue;
	}
	$idlists .= ($idlists=='' ? $row['aid'] : ','.$row['aid']);
}
if($idlists!=='') $this->TotalResult = $row['dd'] = count(explode(',',$idlists));

这样问题就解决了。

版权声明: 本站资源均来自互联网或会员发布,如果侵犯了您的权益请与我们联系,我们将在24小时内删除!谢谢!

转载请注明: dedecms的tag标签列表中有分页却没有数据的处理方法

模板推荐