通过简单的小修改即可实现生成时,前台首页无空白,优化用户体验;
首先打开DEDE默认后台/dede/目录下的makehtml_homepage.php文件!这个文件主要用于处理首页数据生成;
好,我们的目标很明确,当后台在生成前台首页HTML文件的时候,不能出现空白!
方法很简单,我也不废话了,进入正题:
首先在文件中,找到以下代码:$remotepos = empty($remotepos)? '/index.html' : $remotepos;
$isremote = empty($isremote)? 0 : $isremote;
$serviterm = empty($serviterm)? "" : $serviterm;
$homeFile = DEDEADMIN."/".$position;
$homeFile = str_replace("\\","/",$homeFile);
$homeFile = str_replace("//","/",$homeFile);
在上述代码后面追加一段代码:$homeBakFile = str_replace($position,"../index_bak.html",$homeFile);
继续向下:$fp = fopen($homeFile,"r") or die("你指定的文件名有问题,无法创建文件");
fclose($fp);
后面也追加一段代码:$cfp = fopen($homeBakFile,"w") or die("你指定的文件名有问题,无法创建文件");
fclose($cfp);
继续向下找到:$pv->SaveToHtml($homeFile);
改为:$pv->SaveToHtml($homeBakFile);
并且在后面追加一段代码:copy($homeBakFile,$homeFile);
OK,至此已经可以实现生成首页静态页无空白的问题了!
原理也很简单:在另一个文件中生成数据,之后复制到正式文件上!