因為DeDeCMS有緩存機制,有些比較費時的SQl查詢會在數(shù)據(jù)庫中緩存,所以集中發(fā)布文章時,在后臺的文章列表頁的頁碼會過了緩存周期才能正確顯示,解決的辦法是:
打開dede\contont_lisp.php文件,通過查找找到 $arr = GetCache('listcache', $cachekey); 代碼如下:
// 緩存處理
$sql = "SELECT COUNT(*) AS dd FROM `dede_arctiny` $tinyQuery ";
$cachekey = md5($sql);
$arr = GetCache('listcache', $cachekey);//這是從緩存里面取結(jié)果,如果沒有緩存,則生成緩存
if (empty($arr))
{
$arr = $dsql->GetOne($sql);
SetCache('listcache', $cachekey, $arr);//設(shè)置緩存
}
$totalresult = $arr['dd'];
把上面的代碼注釋一部分,改成下面的:
$sql = "SELECT COUNT(*) AS dd FROM `dede_arctiny` $tinyQuery ";
$arr = $dsql->GetOne($sql);
$totalresult = $arr['dd'];
就不會再緩存了,顯示實時的結(jié)果。