DedeCMS定时生成站点地图sitemap.xml的教程

站长手记 作者: 2024-08-27 08:50:01
这篇文章主要介绍dedecms如何实现定时生成站点地图,定时生成首页也可以用这个思路,这里用到了dedecms后台的计划任务功能来完成。 下面是具体操作步骤: 第一步、首先在模板目录放一个sitemap.xml的模板文件。内容如下: 01 ? xml version = 1.0 encoding =  
这篇文章主要介绍dedecms如何实现定时生成站点地图,定时生成首页也可以用这个思路,这里用到了dedecms后台的计划任务功能来完成。   下面是具体操作步骤:   第一步、首先在模板目录放一个sitemap.xml的模板文件。内容如下:  
01 <?xml version="1.0" encoding="UTF-8"?>
03  <url>
04      <loc>/</loc>
05      <lastmod>{dede:arclist row=1 titlelen=24 orderby=pubdate}
06      [field:pubdate function=strftime('%Y-%m-%d',@me)/]
07      {/dede:arclist}</lastmod>
08      <changefreq>daily</changefreq>
09      <priority>1.0</priority>
10  </url>
11  {dede:channel row='10' type='top'}
12  <url>
13  <loc>[field:typelink /]</loc>
14  <changefreq>daily</changefreq>
15  <priority>0.8</priority>
16  </url>
17  {/dede:channel}
18  {dede:arclist row=2000 orderby=pubdate}
19  <url>
20      <loc>[field:arcurl/]</loc>
21      <lastmod>[field:pubdate function=strftime('%Y-%m-%d',@me)/]</lastmod>
22      <changefreq>monthly</changefreq>
23  </url>
24  {/dede:arclist}
25  </urlset>
    第二步、写一个计划任务文件命名为generate_sitemap.php,放在/plus/task目录里,文件内容如下:  
01 <?php
02  //定时生成网站地图
03 require_once(dirname(__FILE__).'/../../include/common.inc.php');
04  include(DEDEINC."/arc.listview.class.php");
05  
06  $lv new ListView();
07  
08  //解析模板到字符串
09 $lv->PartView = new PartView($lv->TypeID,false);
10  $lv->PartView->SetTypeLink($lv->TypeLink);
11  $lv->PartView->SetTemplet(DEDETEMPLATE.'/2012/sitemap.xml');
12  $html $lv->PartView->GetResult();
13  
14  file_put_contents('../../sitemap.xml',$html);
15 ?>
    第三步、在后台添加计划任务,系统——计划任务管理——增加新任务:   任务名称:定时生成网站地图; 运行程序:generate_sitemap.php; 执行时间自己设置; 其他默认即可。   第四步、在模板目录的foot.hml文件或其他公共include文件body结束之前加上触发代码即可。   在计划任务规定的时间内浏览一下网页来触发计划任务文件执行。如果上次运行时间的时间正常就证明定时任务执行成功。
原创声明
本站部分文章基于互联网的整理,我们会把真正“有用/优质”的文章整理提供给各位开发者。本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
本文链接:http://www.jiecseo.com/news/show_69457.html