muban大师 发表于 2020-1-16 13:41:09

dedecms内容随机调用标签相关知识总结

在dedecms 当中, 在文章详情页推荐的文章,很多时候都是一些最新的,最热门的等等。但是还有很多冷门的旧文章,默默得躲在角落里,所以需要我们通过随机推荐的方法把这些内容展示出来。
       
        如标签:
       
        {dede:arclist row='1000' pagesize='10' titlelen='35' orderby='rand'}
        [*,
        {/dede:arclist}
       
        标签的意思,row='1000'代表取出1000个文章, orderby='rand'代表对这些文章随机排序,pagesize='10'代表只显示随机排序后的前十个文章。
       
        这样我们在后台比如网站,点下首页生成,首页文章内容随机显示!有没什么办法可以首页真静态,随机内容也动态显示呢? 刷新一次变化一次呢?
       
        步骤: 
       
        1. 首页所用标签:
       
        {dede:arclist sort=’rand’ titlelen=48 row=16}
        [*,
        {/dede:arclist}
       
        2.设置定时自动更新文件:
       
          复制下面代码,粘贴到一个新文件中,命名为:autoindex.php,上传到ftp的plus文件夹中,看清楚一点是plus文件夹中,切勿错了位置:
       
       
          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 = “zuimoban/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, "
       
          fwrite( $file,"\$last_time=".time().";\n");
       
          fwrite( $file, '?>' );
       
          fclose( $file );
       
          }
       
          ?>
       
        然后我们需要在首页的模版代码head标签中加入一段代码:
       
          
       
          最后点击后台生成,更新首页。这样如何实现dedecms调用随机文章定时更新的功能就已经基本完成,接下来要做的就是查看效果!
页: [1]
查看完整版本: dedecms内容随机调用标签相关知识总结