DEDECMS实现首页每天自动更新的方法
将下面的代码复制下来改名auto.php中的,上传到网站根目录,auto.php代码如下,请保存到网站根目录,当然你也可以随便存一个地方,不过需要改JS代码
<?php
$lasttime=filemtime($_SERVER['DOCUMENT_ROOT']."/index.html");
$interval=60; //更新时间秒为单位1800秒=30分钟
$bdnum=1;//上面设置的时间自动审查生成HTML条数
if((time()-$lasttime)>$interval)
{
require_once (dirname(__FILE__) . "/include/common.inc.php");
require_once DEDEINC."/arc.partview.class.php";
$GLOBALS['_arclistEnv'] = 'index';
$row = $dsql->GetOne("Select * From `dede_homepageset`");
$row['templet'] = MfTemplet($row['templet']);
$pv = new PartView();
$pv->SetTemplet($cfg_basedir . $cfg_templets_dir . "/" . $row['templet']);
$pv->SaveToHtml(dirname(__FILE__).'/index.html');
exit();
}
?>
然后修改首页模板index.html,在模板的底部加入
<script src="/auto.php" language="javascript"></script>
然后更新一次首页html
题外话:要实现DEDE首页每次更新都不同,前提是网站首页必须要有设置调用随机文章,可以在需要的地方加入 sort='rand' ,让每次生成的文章都是随机,这对于网站来讲,就完成了局部更新,非常利于SEO优化
调用代码如下:
{dede:arclist sort='rand' titlelen='30' row='16'}[field:title/]{/dede:arclist}
<?php
$lasttime=filemtime($_SERVER['DOCUMENT_ROOT']."/index.html");
$interval=60; //更新时间秒为单位1800秒=30分钟
$bdnum=1;//上面设置的时间自动审查生成HTML条数
if((time()-$lasttime)>$interval)
{
require_once (dirname(__FILE__) . "/include/common.inc.php");
require_once DEDEINC."/arc.partview.class.php";
$GLOBALS['_arclistEnv'] = 'index';
$row = $dsql->GetOne("Select * From `dede_homepageset`");
$row['templet'] = MfTemplet($row['templet']);
$pv = new PartView();
$pv->SetTemplet($cfg_basedir . $cfg_templets_dir . "/" . $row['templet']);
$pv->SaveToHtml(dirname(__FILE__).'/index.html');
exit();
}
?>
然后修改首页模板index.html,在模板的底部加入
<script src="/auto.php" language="javascript"></script>
然后更新一次首页html
题外话:要实现DEDE首页每次更新都不同,前提是网站首页必须要有设置调用随机文章,可以在需要的地方加入 sort='rand' ,让每次生成的文章都是随机,这对于网站来讲,就完成了局部更新,非常利于SEO优化
调用代码如下:
{dede:arclist sort='rand' titlelen='30' row='16'}[field:title/]{/dede:arclist}