怎么解决织梦dedecms生成栏目HTML缓慢

 我来答
半夏浮生意
2016-02-17 · 知道合伙人互联网行家
半夏浮生意
知道合伙人互联网行家
采纳数:222 获赞数:4651
传统企业走出的自媒体人,关注电商、O2O、传统行业转型、新媒体、大数据、物联网等前沿行业的最新动态。

向TA提问 私信TA
展开全部

织梦dedecms生成栏目HTML缓慢的一个可能原因及解决方法:

1、找到dede\makehtml_list_action.php 文件


在dede\makehtml_list_action.php 的文件行 101 处

//$lv->CountRecord();

有这样一处注释掉的代码,这一个计算某个栏目类有多少分页的代码居然不运行,从而导致后面一行


if($lv->TypeLink->TypeInfos[‘ispart’]==0 && $lv->TypeLink->TypeInfos[‘isdefault’]!=-1) $ntotalpage = $lv->TotalPage;

else $ntotalpage = 1;

导致这里面的 $ntotalpage 根本得不到值 (NULL),因为 $lv->TotalPage 是在$lv->CountRecord 函数里面赋值

,从而想到,取消此处注释,让栏目生成HTML 分批进行

2、尽量不要一次性生成过多

在生成后台我们可以安排日期进行生成或者安排id进行生成,这样比较合理,不然线程过多,或者时间过程,很容易导致卡死!

匿名用户
2016-02-09
展开全部
在dede\makehtml_list_action.php 的文件行 101 处
//$lv->CountRecord();
有这样一处注释掉的代码,似乎DEDECMS的程序猿同学欲言又止
这一个计算某个栏目类有多少分页的代码居然不运行,从而导致后面一行

if($lv->TypeLink->TypeInfos[‘ispart’]==0
&&
$lv->TypeLink->TypeInfos[‘isdefault’]!=-1)
$ntotalpage = $lv->TotalPage;
else $ntotalpage = 1;

导致这里面的 $ntotalpage 根本得不到值 (NULL),
因为 $lv->TotalPage 是在$lv->CountRecord
函数里面赋值
所以感觉特别奇怪。

从而想到,取消此处注释,让栏目生成HTML 分批进行

//如果栏目的文档太多,分多批次更新

if($ntotalpage <= $maxpagesize ||
$lv->TypeLink->TypeInfos['ispart']!=0
||
$lv->TypeLink->TypeInfos['isdefault']==-1)
{

$reurl = $lv->MakeHtml('', '', $isremote);

$finishType = TRUE;
}
else
{
// 让代码进入此执行才是分批生成html

$reurl = $lv->MakeHtml($mkpage, $maxpagesize,
$isremote);

$finishType = FALSE;

$mkpage = $mkpage $maxpagesize;

if( $mkpage >= ($ntotalpage 1) ) $finishType =
TRUE;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式