織夢DEDECMS標(biāo)簽TAG列表頁有分頁頁碼,但沒數(shù)據(jù)的解決方法

最近檢查TAG標(biāo)簽時發(fā)現(xiàn),有的TAG標(biāo)簽打開后,列表里面沒有數(shù)據(jù),但下面分頁代碼卻還在,原來TAG標(biāo)簽關(guān)聯(lián)過很多已經(jīng)刪除的文檔,在TAG標(biāo)簽列表頁就會出現(xiàn)有頁碼分頁沒有數(shù)據(jù)的情況,這是因為織夢的TAG標(biāo)簽列表核心文件不嚴謹引起的,我們可以讓關(guān)聯(lián)的TAG標(biāo)簽所屬的已經(jīng)刪除的文檔在TAG表中刪除掉就能解決空數(shù)據(jù)列表問題。

解決方法:

打開 /include/arc.taglist.class.php 搜索

 //更新Tag信息

大概在 137行左右,把它上面的這3行代碼

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

修改為:

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

解決。

 

THE END
亚洲中文色欧另类欧美,久久久久久久激情,亚洲 日韩 欧美 另类 国产,中文字幕高清无码男人的天堂 www.sucaiwu.net