当前位置 : 主页 > 建站教程 > dedecms >

织梦首页调用随机文章刷新就更新方法

来源:互联网 收集:自由互联 发布时间:2021-06-20
织梦文章详情页推荐的文章,很多时候都是一些最新的,最热门的等等。但是还有很多冷门的旧文章,默默得躲在角落里,所以需要我们通过随机推荐的方法把这些内容展示出来。 如标

织梦文章详情页推荐的文章,很多时候都是一些最新的,最热门的等等。但是还有很多冷门的旧文章,默默得躲在角落里,所以需要我们通过随机推荐的方法把这些内容展示出来。

如标签:

{dede:arclist row='1000' pagesize='10' titlelen='35' orderby='rand'} 
<li><a href="[field:arcurl/]">[field:title/]</a></li> 
{/dede:arclist}

标签的意思,row='1000'代表取出1000个文章, orderby='rand'代表对这些文章随机排序,pagesize='10'代表只显示随机排序后的前十个文章。

这样我们在后台点下首页生成,首页文章内容随机显示!有没什么办法可以首页真静态,随机内容也动态显示呢? 刷新一次变化一次呢?

 

步骤: 

1. 首页所用标签:

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

2.设置定时自动更新文件:

复制下面代码,粘贴到一个新文件中,命名为:autoindex.php,上传到ftp的plus文件夹中,看清楚一点是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 = “muban/index.htm”;//这里是首页模板位置,当前是dede模板目录是muban,请自己修改成你网站的。
   $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>

最后点击后台生成,更新首页。这样如何实现dedecms调用随机文章定时更新的功能就已经基本完成,接下来要做的就是查看效果!

网友评论
相关栏目