因为DeDeCMS有缓存机制,有些比较费时的SQl查询会在数据库中缓存,所以集中发布文章时,在后台的文章列表页的页码会过了缓存周期才能正确显示,解决的办法是:打开dedecontont_lisp.php文件,通过查找找到 $arr = GetCache('listcache', $cachekey); 代码如下:
// 缓存处理$sql = "SELECT COUNT(*) AS dd FROM `dede_arctiny` $tinyQuery ";$cachekey = md5($sql);$arr = GetCache('listcache', $cachekey);//这是从缓存里面取结果,如果没有缓存,则生成缓存if (empty($arr)){ $arr = $dsql->GetOne($sql); SetCache('listcache', $cachekey, $arr);//设置缓存}$totalresult = $arr['dd'];把上面的代码注释一部分,改成下面的:$sql = "SELECT COUNT(*) AS dd FROM `dede_arctiny` $tinyQuery ";$arr = $dsql->GetOne($sql);$totalresult = $arr['dd'];就不会再缓存了,显示实时的结果。