扫一扫加微信

织梦dede系统sitemap.xml自动生成教程

很多小伙伴在使用dede系统生成sitemap时,都是在外部用工具生成的sitemap.xml,然后在上传根目录再到站长平台去提交。

今天小六SEO教大家直接在dede系统内部生成sitemap.xml,免去使用工具生成和上传的步骤,不清楚的小伙伴请好好学习吧。

首页我们理解一下原理,建一个单页(与我们接下来要建的模板关联一下),建一个模板写url调用,调用写好后,我们更新单页内容就可以了。

也可以先建模板写好调用代码,再去建单页绑定模板也可以,顺序随意。

第一步:进入dede后台-频道模型-单页文档管理-增加一个单页

如图:

第二步:进入刚才新建的单页管理界面,把模板信息关联一下

如图所示:

说明:

1、标识是网站的模板目录,是什么就填什么,一般是default。

2、模板文件名就是sitemap.htm,({style}是模板目录)写下来就行了,后面我们建模板时文件名与这个一致就行。

3、文件名就是我们要生成的页面文件名字,一般就叫sitamap.xml就可以了,便于识别,不用写路径,更新会直接生成在网站根目录,后面括号里也写了,相对于安装目录。

4、这个网页不要求收录,所以tdk,就把标题写一下知道是sitemap就行,其他关键字、摘要就不用写。

第三步:选择模板-模板管理-默认模板管理-新建模板,命名为sitemap.htm

如图所示:

第四步:复制以下代码保存到刚才新建的sitemap.htm模板中,点击保存

<?xml version=”1.0″ encoding=”UTF-8″?>

<urlset xmlns=”http://www.sitemaps.org/schemas/sitemap/0.9″>

<url>

<loc>http://www.seo-6.com/</loc>

<lastmod>{dede:arclist row=1 titlelen=24 orderby=pubdate}

[field:pubdate function=strftime(‘%Y-%m-%d’,@me)/]

{/dede:arclist}</lastmod>

<changefreq>always</changefreq>

<priority>1.0</priority>

</url>

 

{dede:channel row=’200′ type=’top’}

<url>

<loc>http://www.seo-6.com[field:typelink /]</loc>

<changefreq>always</changefreq>

<priority>0.8</priority>

</url>

{/dede:channel}

 

{dede:channel type=’son’ typeid=’1′}

<url>

<loc>http://www.seo-6.com[field:typelink /]</loc>

<changefreq>daily</changefreq>

<priority>0.7</priority>

</url>

{/dede:channel}

 

{dede:arclist row=’5000′ orderby=pubdate}

<url>

<loc>http://www.seo-6.com[field:arcurl/]</loc>

<lastmod>[field:pubdate function=strftime(‘%Y-%m-%d’,@me)/]</lastmod>

<changefreq>always</changefreq>

<priority>0.6</priority>

</url>

{/dede:arclist}

</urlset>

说明:这个是url调用代码,请直接将每个代码的域名(http://www.seo-6.com)改成自己的即可,第一个代码块为首页,第二个为栏目页,第三个为二级栏目页,第四个为内容页,row表示url条数,type=’top’表示顶级栏目,type=’son’ 表示子栏目,typeid=’1’表示栏目id
注意1:我这里网址是写全的,dede后台可以开启绝对地址功能,我们可以改成下面这样,要方便一些。

(1)开启绝对地址,在系统里选核心设置,如图:

(2)原调用代码块:

<loc>http://www.seo-6.com[field:typelink /]</loc>

<loc>http://www.seo-6.com[field:arcurl/]</loc>

(3)把这有这两个代码块的网址删掉,看起来简便一些,如下:

<loc>[field:typelink /]</loc>

<loc>[field:arcurl/]</loc>

这样好处就是对所有dede模块都可以套用这个模板,我们只需要将第一个代码块的网址切换成你的网址,整个代码就像这样:

<?xml version=”1.0″ encoding=”UTF-8″?>

<urlset xmlns=”http://www.sitemaps.org/schemas/sitemap/0.9″>

<url>

<loc>http://www.seo-6.com/</loc>

<lastmod>{dede:arclist row=1 titlelen=24 orderby=pubdate}

[field:pubdate function=strftime(‘%Y-%m-%d’,@me)/]

{/dede:arclist}</lastmod>

<changefreq>always</changefreq>

<priority>1.0</priority>

</url>

{dede:channel row=’200′ type=’top’}

<url>

<loc>[field:typelink /]</loc>

<changefreq>always</changefreq>

<priority>0.8</priority>

</url>

{/dede:channel}

{dede:channel type=’son’ typeid=’1′}

<url>

<loc>[field:typelink /]</loc>

<changefreq>daily</changefreq>

<priority>0.7</priority>

</url>

{/dede:channel}

{dede:arclist row=’5000′ orderby=pubdate}

<url>

<loc>[field:arcurl/]</loc>

<lastmod>[field:pubdate function=strftime(‘%Y-%m-%d’,@me)/]</lastmod>

<changefreq>always</changefreq>

<priority>0.6</priority>

</url>

{/dede:arclist}

</urlset>

注意2:如果我们有自建的专题页,或者其他单页,不是通过栏目建的,而是通过这个单页模块自建的页面,dede程序是抓不到这个链接的,生成sitemap.xml后就没有这个链接,所以我们需要将这个单页地址写进模板中。

把链接写全,把下面这个模块加到sitemap.htm模板中(页面地址自改):

<url>

<loc>http://www.seo-6.com/baike.html</loc>

<lastmod>2017-6-28</lastmod>

<changefreq>always</changefreq>

<priority>0.6</priority>

</url>

第五步:回到‘单页文档管理’-选中先前新建的单页-点击右上角‘更新选中页面’

如图所示:

这样我们网站蜘蛛地图sitemap.xml就算建好了,最后我们到浏览器输一遍地址(主域名/sitemap.xml),检查有没有漏掉的链接,没有的话就完成了,有漏掉的就回头检查模板是不是有漏写的版块。成功后去站长平台提交sitemap就可以了,百度平台会周期抓取并更新这个文件。

提示:我们每新增链接后,需要来更新一下这个单页,有代码实力的可以改写成随文章自动更新,不会的就老实来手动更新一下,就不需要我们每次都去外部用工具生成sitemap文件,然后又去上传到空间了,当然用dede地图插件生成也可以的,只是个人感觉不好用。

 

评论

1+5=