SEO技术 原创

织梦自动生成xml文件地图详情(1)

爱搜学习网的头像 爱搜学习网 · · 回复 14 回复本帖
只看楼主 倒序浏览 共 14 楼 第 1 / 1 页
楼主 2018-02-18 13:47 2,144 阅读 1#

本文教大家使用织梦生成xml地图,快速生成sitemap提升页面收录和抓取排名。经忧哥亲试有效,分享给大家。

1,首先了解一下织梦自带的网站地图生成功能

织梦网站地图

通过改造把这两项功能改成百度XML地图 及  谷歌网站地图。

2,开始代码进行改造

在 /templets/plus 目录下找到两个文件sitemap.htm 和 rssmap.htm,前者我们当中是百度的sitemap 后者我们当中谷歌的sitemap。

织梦代码

下面开始进行修改:

修改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>

大家如果熟悉织梦CMS程序结构,也可以自行修改条数。

3,继续修改地图代码

下面继续修改程序代码,找到dede后台目录,找到 makehtml_map.php  修改,过程繁琐,直接放上整体代码如下:

<?php
/**
* 生成网站地图
*
* @version $Id: makehtml_map.php 1 11:17 2010年7月19日Z tianya $
* @package DedeCMS.Administrator
* @copyright Copyright (c) 2007 – 2010, DesDev, Inc.
* @license http://help.dedecms.com/usersguide/license.html
* @link http://www.dedecms.com
*/
require_once(dirname(__FILE__).”/config.php”);
require_once(DEDEINC.”/sitemap.class.php”);
require_once(DEDEINC.”/dedetag.class.php”);
require_once DEDEINC.”/arc.partview.class.php”;

if(empty($dopost))
{
ShowMsg(“参数错误!”,”-1″);
exit();
}
$isremote = empty($isremote)? 0 : $isremote;
$serviterm=empty($serviterm)? “” : $serviterm;
$sm = new SiteMap();
$maplist = $sm->GetSiteMap($dopost);
if($dopost==”site”)
{
$murl = $cfg_cmspath.”/sitemap.xml”;
$tmpfile = $cfg_basedir.$cfg_templets_dir.”/plus/sitemap.htm”;
}
else
{
$murl = $cfg_cmspath.”/rssmap.xml”;
$tmpfile = $cfg_basedir.$cfg_templets_dir.”/plus/rssmap.htm”;
}
//$dtp = new DedeTagParse();
//$dtp->LoadTemplet($tmpfile);
//$dtp->SaveTo($cfg_basedir.$murl);
$pv = new PartView();
$pv->SetTemplet($tmpfile); //在这里修改你的谷歌地图模板路径,相对于模板目录
$pv->SaveToHtml($cfg_basedir.$murl); //生成文件名,保存在根目录
if($cfg_remote_site==’Y’ && $isremote == 1)
{
if($serviterm!=””)
{
list($servurl, $servuser, $servpwd) = explode(‘,’, $serviterm);
$config=array( ‘hostname’ => $servurl, ‘username’ => $servuser,
‘password’ => $servpwd,’debug’ => ‘TRUE’);
} else {
$config=array();
}
if( $ftp->connect($config) )
{
//分析远程文件路径
$remotefile = $murl;
$localfile = ‘..’.$remotefile;
$remotedir = preg_replace(‘#[^\/]*\.html#’, ”, $remotefile);
$ftp->rmkdir($remotedir);
if($ftp->upload($localfile, $remotefile, ‘acii’)) echo “远程发布成功!”.”<br />”;
}
}
//$pv->Clear();
echo “<a href=’$murl’ target=’_blank’>成功更新文件: $murl 浏览…</a>”;
exit();

基本差不多了,如果你配置成功了给我留一句言。

4,完成地图改造

使用方法:在你织梦后台生成的地方,点击更新网站地图,那么这个网站地图的问题就完美结局了。

织梦地图生成

至此,利用织梦CMS程序自带地图改造完成。如果你愿意动手的话,可以自己尝试来为网站制作一个XML格式地图,提交给百度谷歌,以达到最佳的收录效果。(PS,如果实在不会动代码,可以留言分享我已经修改好的模板文档直接上传覆盖即可。)

链接: https://pan.baidu.com/s/1EjCuOvP47w-GvSKDtKseJQ 密码: bfhd

 

最后感谢大家,如果对你有帮助记得留言,并分享给你的朋友。

常见问题

《织梦自动生成xml文件地图详情(1)》主要讲什么?

本文教大家使用织梦生成xml地图,快速生成sitemap提升页面收录和抓取排名。经忧哥亲试有效,分享给大家。 1,首先了解一下织梦自带的网站地图生成功能 通过改造把这两项功能改成百度XML地图 及 谷歌网站地图。 2,开始代码进行改造 在 /templets/plus 目录下找到两个文件sitemap.htm 和 rs

SEO技术相关内容,适合谁看?

适合关注SEO技术的读者,尤其是需要落地执行的运营和建站从业者。

回复
签名:爱搜学习网站长,14年SEO与网站建设实操经验,专注搜索引擎优化、WordPress建站、百度与Google SEO、服务器运维和网站流量增长。
全部回复 14 正序 倒序
沙发 2018-02-27 14:21 2#

楼主 视频教程 什么时候更新

· · 回复
板凳 2018-03-05 15:57 3#

很快将会更新大量的视频上线。

· · 回复
地板 2018-03-05 19:54 4#

无忧老师真不错,https怎么申请的

· · 回复
回复 2018-03-07 13:47 5#

无忧老师真不错.感谢分享

· · 回复
回复 2018-03-10 16:39 6#

不客气啊

· · 回复
回复 2018-03-20 14:40 7#

真不错

· · 回复
回复 2018-03-29 21:44 8#

666

· · 回复
回复 2018-04-15 14:14 9#

老师 我拿走了 去网站上弄一下 我觉得我的网站应该用一下地图了 老师厉害

· · 回复
回复 2018-04-15 22:10 10#

拿去不谢。

· · 回复
回复 2018-05-25 16:35 11#

老师,PHP那个我复制您的上去有语法错误无法使用呢,求解

· · 回复
回复 2018-05-25 18:45 12#

我打包上传源文件

· · 回复
回复 2018-05-30 10:30 13#

老师能发我邮箱吗?十分感谢!

· · 回复
回复 2018-07-03 11:43 14#

下载的源文件可以,安装成功了,谢谢无忧老师

· · 回复
回复 2018-07-16 10:31 15#

老师 我的安装是成功了 但是获取不到首页地址 只有子目录 咋弄

· · 回复
发表回复请遵守版规,广告与灌水一律删除

支持 HTML 基础标签,如 <blockquote>、<strong>

QQ 微信 Telegram whatsApp
分享本页
返回顶部