欢迎来到元素模板ys720.com,本站提供专业的织梦模板PBOOTCMS模板网站模板网站修改/网站仿站
当前位置:主页 > 程序教程 > DEDECMS教程 >
DEDECMS教程

织梦dedecms 利用自带的更新网站地图功能生成谷歌百度SITEMAP

(元素模板) / 2017-11-09 16:11
网上有很多的 织梦生成 百度地图 和谷歌地图SITEMAP的教程,这里我为大家说下如何使用自带“更新网站地图”来生成网站SITEMAP地图
1.在/templets/plus 目录下 找到两个文件sitemap.htm 和rssmap.htm,前者我们当中是百度的sitemap 后者我们当中谷歌的sitemap
2.修改sitemap.htm :把原来的代码全部删除 然后用下面的代码      

<?xml version="1.0" encoding="{dede:global.cfg_soft_lang /}"?>
 <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> 
 <url> 
 <loc>{dede:global.cfg_basehost/}</loc> 
 <changefreq>always</changefreq> 
 <priority>1.0</priority> 
 </url> 
{dede:arclist row='10000' orderby='pubdate'}
<url> 
 <loc>[field:global.cfg_basehost/][field:arcurl/]</loc> 
 <lastmod>[field:pubdate function="GetDateMK(@me)"/]</lastmod> 
</url> 
{/dede:arclist} 
{dede:channelartlist row='50'}
 <url>
 <loc>{dede:global.cfg_basehost/}{dede:field name='typeurl'/}</loc>
 <lastmod>{dede:php}echo date('Y-m-d');{/dede:php}</lastmod>
 </url>
 {dede:channel type='son' row='8'}
 <url>
 <loc>[field:global.cfg_basehost/][field:typelink/]</loc>
 <lastmod>[field:id runphp="yes"]@me=date('Y-m-d');[/field:id]</lastmod>
 </url>
 {/dede:channel}
 {/dede:channelartlist}
</urlset>

修改rssmap.htm:把原来的代码全部删除 然后用下面的代码      

<?xml version='1.0' encoding='UTF-8'?>
    <urlset xmlns='http://www.google.com/schemas/sitemap/0.84'>
      {dede:arclist typeid='0' } 
       <url><loc>[field:global.cfg_basehost/][field:arcurl/]</loc><lastmod>[field:pubdate function="MyDate('Y-m-d',@me)"/]</lastmod><changefreq>daily</changefreq><priority>1.0</priority></url>
      {/dede:arclist}
      {dede:channelartlist row=50}
        <url><loc>[{dede:global.cfg_basehost/}{dede:field name='typeurl'/}]</loc><lastmod>{dede:php}echo date('Y-m-d');{/dede:php}</lastmod><changefreq>daily</changefreq><priority>1.0</priority></url>
           {dede:channel type='son' row='8'}
        <url><loc>[[field:global.cfg_basehost/][field:typelink/]]</loc><lastmod>[field:id runphp="yes"]@me=date('Y-m-d');[/field:id]</lastmod><changefreq>daily</changefreq><priority>1.0</priority></url>
        {/dede:channel}
    {/dede:channelartlist}
</urlset>


大家也可以自行修改条数

3.找到dede后台目录 找到makehtml_map.php
搜索以下代码

在require_once(DEDEINC."/dedetag.class.php");

在下面加入

require_once(DEDEINC."/arc.partview.class.php");


再搜索if($dopost=="site")

然后把这个判断里面的代码替换掉:
把下面  /data/sitemap.html 和 /data/rssmap.xml 改成 你需要生成的文件名  比如 $murl = $cfg_cmspath."/baidusitemap.xml"; 和 $murl = $cfg_cmspath."/sitemap.xml";

这里是生成的目录和文件名

加入以下代码:

$pv = new PartView();
$pv->SetTemplet($tmpfile); //在这里修改你的谷歌地图模板路径,相对于模板目录
$pv->SaveToHtml($cfg_basedir.$murl); //生成文件名,保存在根目录

再找到下面3句注释掉

$dtp = new DedeTagParse();
$dtp->LoadTemplet($tmpfile);
$dtp->SaveTo($cfg_basedir.$murl);

还有这个也注释掉

$dtp->Clear();

完成后 到后台生成下 就可以看到了
Copyright @ 2013-2021 元素模板 www.ys720.com All Rights Reserved. 版权所有 元素模板 www.ys720.com