4,完成地图改造
$remotedir = preg_replace(‘#[^\/]*\.html#’, ”, $remotefile);
{/dede:channelartlist}
}
}
{dede:arclist row=’10000′ orderby=’pubdate’}
<lastmod>[field:pubdate function=”GetDateMK(@me)”/]</lastmod>
<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>
require_once(DEDEINC.”/dedetag.class.php”);
{/dede:channel}
$pv = new PartView();
<?xml version=”1.0″ encoding=”{dede:global.cfg_soft_lang /}”?>
</url>
require_once(DEDEINC.”/sitemap.class.php”);
{
$tmpfile = $cfg_basedir.$cfg_templets_dir.”/plus/sitemap.htm”;
require_once DEDEINC.”/arc.partview.class.php”;
<url>
<loc>{dede:global.cfg_basehost/}</loc>
使用方法:在你织梦后台生成的地方,点击更新网站地图,那么这个网站地图的问题就完美结局了。
}
{/dede:arclist}
$murl = $cfg_cmspath.”/sitemap.xml”;
<loc>{dede:global.cfg_basehost/}{dede:field name=’typeurl’/}</loc>
大家如果熟悉织梦CMS程序结构,也可以自行修改条数。
<url>
$sm = new SiteMap();
{
//$dtp->SaveTo($cfg_basedir.$murl);
$serviterm=empty($serviterm)? “” : $serviterm;
{/dede:channel}
{/dede:arclist}
if(empty($dopost))
<loc>[field:global.cfg_basehost/][field:arcurl/]</loc>
修改sitemap.htm :把原来的代码全部删除 然后用下面的代码。
* @version $Id: makehtml_map.php 1 11:17 2010年7月19日Z tianya $
<urlset xmlns=’′>
{
echo “<a href=’$murl’ target=’_blank’>成功更新文件: $murl 浏览…</a>”;
2,开始代码进行改造
* 生成网站地图
下面开始进行修改:
<loc>[field:global.cfg_basehost/][field:typelink/]</loc>
1,首先了解一下织梦自带的网站地图生成功能
修改rssmap.htm:把原来的代码全部删除 然后用下面的代码
成都seo写的这票文章就是来教大家怎么使织梦自动生成xml地图,快速提高网站收录与关键词排名。
require_once(dirname(__FILE__).”/config.php”);
基本差不多了,如果你配置成功了给我留一句言。
{
{dede:channelartlist row=’50’}
* @package DedeCMS.Administrator
* @license
{
<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>
* @link
$murl = $cfg_cmspath.”/rssmap.xml”;
//分析远程文件路径
}
</url>
{dede:channel type=’son’ row=’8′}
}
}
</url>
<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>
首先我们要了解什么是xml地图文件,我们才能解决怎么生成xml地图文件,简单的来说sitemap.xml就是一个网站所有链接的集合,制作了sitemap的网站收录情况都是比较好的,因为主动的把所有链接提交给蜘蛛,比蜘蛛自己一个个来爬行的速度更快,层次更广。
</urlset>
在 /templets/plus 目录下找到两个文件sitemap.htm 和 rssmap.htm,前者我们当中是百度的sitemap 后者我们当中谷歌的sitemap。
<priority>1.0</priority>
<urlset xmlns=”″>
<url>
下面继续修改程序代码,找到dede后台目录,找到 makehtml_map.php 修改,过程繁琐,直接放上整体代码如下:
$config=array( ‘hostname’ => $servurl, ‘username’ => $servuser,
/**
exit();
$tmpfile = $cfg_basedir.$cfg_templets_dir.”/plus/rssmap.htm”;
exit();
if($ftp->upload($localfile, $remotefile, ‘acii’)) echo “远程发布成功!”.”<br />”;
$config=array();
‘password’ => $servpwd,’debug’ => ‘TRUE’);
<?xml version=’1.0′ encoding=’UTF-8′?>
//$pv->Clear();
$ftp->rmkdir($remotedir);
</url>
$pv->SaveToHtml($cfg_basedir.$murl); //生成文件名,保存在根目录
list($servurl, $servuser, $servpwd) = explode(‘,’, $serviterm);
if($dopost==”site”)
* @copyright Copyright (c) 2007 – 2010, DesDev, Inc.
*
if( $ftp->connect($config) )
<url>
{dede:arclist typeid=’0′ }
//$dtp->LoadTemplet($tmpfile);
{dede:channelartlist row=50}
//$dtp = new DedeTagParse();
$localfile = ‘..’.$remotefile;
if($cfg_remote_site==’Y’ && $isremote == 1)
if($serviterm!=””)
<?php
$maplist = $sm->GetSiteMap($dopost);
{/dede:channelartlist}
ShowMsg(“参数错误!”,”-1″);
</urlset>
{
<changefreq>always</changefreq>
else
<lastmod>{dede:php}echo date(‘Y-m-d’);{/dede:php}</lastmod>
<lastmod>[field:id runphp=”yes”]@me=date(‘Y-m-d’);[/field:id]</lastmod>
} else {
$pv->SetTemplet($tmpfile); //在这里修改你的谷歌地图模板路径,相对于模板目录
$isremote = empty($isremote)? 0 : $isremote;