由于用DEDECMS做的網站文章數量多的問題,每添加或采集一篇文章,DEDE自動生成了當前欄目的所有列表頁(當然你可以設置手動更新列表頁),有些欄目的列表頁的數量達到了幾百上千頁,如果連續采集的話,服務器上CPU使用率居高不下,所以在尋找能不能只生成最新部分的列表頁,而舊的列表不理會呢?百度了一下,DEDE暫時不支持在生成列表頁時指定文章數量,所以查看了DEDE的源碼,得到一個簡單的方法,不過是得修改源碼的,特發出來。
修改的文件:Include/arc.listview.class.php
查找
//初始化列表模板,并統計頁面總數
在此句的上面添加一小段代碼:
if($this->TotalResult > 100)
{
$this->TotalResult = 100;
}
這里的兩個100你可以自己改成其它數字,比如你只想生成最新1000條文章的列表頁,兩個100都改成1000。
以上方法在dede v5.7 UFT8上測試通過。
測試地址:http://www.80topic.cn/
欄目頁面:http://www.80topic.cn/news/list_14_10.html (欄目頁只生成了10頁,更改數字測試)