DedeCMS首页调用随机文章定时自动更新的方法

前端之家收集整理的这篇文章主要介绍了DedeCMS首页调用随机文章定时自动更新的方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

下面是编程之家 jb51.cc 通过网络收集整理的代码片段。编程之家小编现在分享给大家,也给大家做个参考。

网站首页内容的更新频率直接决定了网站的收录速度和站点权重,这就需要网站首页内容随时更新,但是我们有时候不可能随时的自己去手动更新,这时候,我们就可以给 Dedecms 设置一下首页自动更新,没错,没错就是自动更新,全自动更新首页文章列表。设置自动更新首页的具体操作方法如下:

第 1 步

首页模板里面添加随机文章调用标签,在这里给大家解释一下为什么要添加随机文章调用标签呢?因为随机调用标签会在每次刷新时调用不同的文章内容,就相当于每次刷新首页都有新内容展示出来,就算是网站文章没有增加也可以。而如果只是普通的文章调用标签,并且在网站内容文章没有增加的情况下刷新首页是不会出现新内容的。具体调用代码如下:

{dede:arclist sort=’rand’ titlelen=48 row=16}

<li><a href="[field:arcurl/]" title="[field:title/]" target="_blank" rel="noopener noreferrer">[field:title/]</a></li>

{/dede:arclist}

面这段列表代码可以调用随机文章,并且在每次刷新动态页面的时候都会变化,但是由于织梦是首页生成静态 html 的,所以如果不去手动生成还是不会变化,这样就用到了下面的方法

第 2 步

设置定时自动更新文件,复制下面代码,粘贴到一个新文件中,命名为:autoindex.PHP上传到网站根目录的 plus 文件夹中。

<?PHP

function sp_input( $text )

{

$text = trim( $text );

$text = htmlspecialchars( $text );

if (!get_magic_quotes_gpc())

return addslashes( $text );

else

return $text;

}

$autotime = 3600;//自动更新时间,单位为秒,这里我设为一小时,大家可以自行更改。

$fpath = "../data/last_time.inc";//记录更新时间文件,如果不能达到目的,请检查是否有读取权限。

include( $fpath );

if( empty($last_time))

$last_time = 0;

if( sp_input($_GET['renew'])=="now")

$last_time = 0;

if((time()-$last_time)>=$autotime )

{

define('DEDEADMIN',ereg_replace("[/]{1,}",'/',dirname(__FILE__) ) );

require_once(DEDEADMIN."/../include/common.inc.PHP");

require_once(DEDEINC."/arc.partview.class.PHP");

/*

$row = $dsql->GetOne("Select * From dede_homepageset");

$dsql->Close();

$templet=$row['templet'];

$position=$row['position'];

*/

$templet = “tnbjh/index.htm”;//这里是首页模板位置,当前是dede默认首面位置。

$position = "../index.html";

$homeFile = dirname(__FILE__)."/".$position;

$homeFile = str_replace("","/",$homeFile );

$homeFile = str_replace( "//",$homeFile );

$pv = new PartView();

$pv ->SetTemplet( $cfg_basedir.$cfg_templets_dir."/".$templet );

$pv -> SaveToHtml( $homeFile );

$pv -> Close();

$file = fopen( $fpath,"w");

fwrite( $file,"<?PHP ");

fwrite( $file,"$last_time=".time()."; ");

fwrite( $file,'?>' );

fclose( $file );

}

?>

然后我们需要在首页的模版代码 head 标签中引入下面这段代码,也就是引入这个 PHP 文件

<script src="/plus/autoindex.PHP" language="javascript"></script>

完成以上步骤后在后台点击生成-更新首页。这样就能实现首页内容定时自动更新了,一定要看清楚上面的注释,时间是以秒为单位的,默认 3600 秒是一小时,大家可以自行更改。

以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

猜你在找的Dedecms相关文章