Dedecms网站的地图更新很繁琐,文章已经做了自动更新,可是效果依然不理想。
教程如下:
首先是要在模板目录/dede/templets放一个sitemap.xml的文件,代码如下:
<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><url> <loc>http://www.你的域名.com/</loc> <lastmod>{dede:arclist row=1 titlelen=24 orderby=pubdate} [field:pubdate function=strftime('%Y-%m-%d',@me)/] {/dede:arclist}</lastmod> <changefreq>daily</changefreq> <priority>1.0</priority></url>{dede:channel row='10' type='top'}<url><loc>[field:typelink /]</loc><changefreq>daily</changefreq><priority>0.8</priority></url>{/dede:channel}{dede:arclist row=2000 orderby=pubdate}<url> <loc>[field:arcurl/]</loc> <lastmod>[field:pubdate function=strftime('%Y-%m-%d',@me)/]</lastmod> <changefreq>monthly</changefreq></url>{/dede:arclist}</urlset>
然后新建一个PHP文件复制下面的代码保存为“generate_sitemap.php“,放在根目录/plus/task目录里面:
<?phprequire_once(dirname(__FILE__).'/../../include/common.inc.php');include(DEDEINC."/arc.listview.class.php");$lv = new ListView();//解析模板到字符串$lv->PartView = new PartView($lv->TypeID,false);$lv->PartView->SetTypeLink($lv->TypeLink);$lv->PartView->SetTemplet(DEDETEMPLATE.'/sitemap.xml');$html = $lv->PartView->GetResult();file_put_contents('../../sitemap.xml',$html);?>
其次在织梦后台-系统-计划任务管理-增加新任务,任务名称:随便写任性!比如高端大气上档次的定时更新地图,地图运行程序:“generate_sitemap.php”执行时间:随便填其他默认就行了。最后在织梦的模板目录的“foot.htm”文件最后引用就行了,引用代码如下:
<script language="javascript" src="http://www.nrgmm.cn/plus/task/generate_sitemap.php"></script>
发表评论