浙北英语网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

湖州日报:3名学子入围“希望之星”只有狂人才干的事情!带字幕美国之音慢速英语VOA Special English学英语视频近1000个,自诩为国内最全!适合增加词汇和锻炼听力!点击查看...
查看: 333|回复: 0
打印 上一主题 下一主题

织梦DedeCMS首页调用随机文章定时自动更新

[复制链接]
跳转到指定楼层
1#
发表于 2014-1-1 14:26:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

大家做SEO的都知道网站首页的更新频率直接决定了网站的收录速度和一部分站点权重,但是我们不能实时的去更新,在这个科技如此发达的时代如果我们还在采用最原始的办法那一定是个悲剧。没错,就像标题写的一样,自动,没错就是自动,全自动更新首页的文章列表。

第一步调用随机文章:

  织梦给出了随机文章调用的参数如下:

{dede:arclist sort=’rand’ titlelen=48 row=16}<li><a href="[field:arcurl/]" title="[field:title/]" target="_blank">[field:title/]</a></li>{/dede:arclist}

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

第二步设置定时自动更新文件:

复制下面代码,粘贴到一个新文件中,命名为:autoindex.php,上传到ftp的plus文件夹中,看清楚一点是plus文件夹中,错了位置不会生效:

<?phpfunction sp_input( $text ){$text = trim( $text );$text = htmlspecialchars( $text );if (!get_magic_quotes_gpc())return addslashes( $text );elsereturn $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\n");fwrite( $file,"\$last_time=".time().";\n");fwrite( $file, '?>' );fclose( $file );}?>

  然后我们需要在首页的模版代码head标签中加入一段代码:

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

  然后点击后台生成,更新首页。

  这样就等待验证结果吧,一点要看清楚上面的注释,时间是以秒为单位的,默认3600秒是一小时,大家可以自行更改。


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|典范英语|Oxford在线词典|在线查词典|每日签到|浙北英语网 ( 蜀ICP备10032068号 )

GMT+8, 2024-12-22 23:16 , Processed in 0.066747 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表