織夢dedecms程序生成xml格式網(wǎng)站地圖,這個也是非常簡單的,大家按照以下幾個步驟操作就行了,首先登錄織夢程序后臺,點擊核心 – 頻道模型- 自由列表管理,再點擊添加自由列表。
大家按照以下填寫:
自由列表標(biāo)題:【XML地圖】列表(可以自己命名);
列表HTML存放目錄:{cmspath}/(表示XML地圖存放在網(wǎng)站根目錄);
目錄默認(rèn)頁名稱:sitemap.xml(網(wǎng)站地圖名稱);
命名規(guī)則:{listdir}/sitemap.xml(網(wǎng)站命名規(guī)則);
列表模板:{style}/sitemap_xml.htm(網(wǎng)站地圖模板文件);
每頁記錄數(shù):30000;
限定頻道:普通文章;
復(fù)制以下代碼新建成一個xml地圖文件,命名為sitemap_xml.htm,,上傳至織夢程序/templets/default/模板文件夾中。
<?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/}</lo?c> <changefreq>always</changefreq> <priority>1.0</priority> </url> {dede:arclist row=’10000′ orderby=’pubdate’} <url> <loc>[field:arcurl/]</loc> <lastmod>[field:pubdate function=”GetDateMK(@me)”/]</lastmod> </url> {/dede:arclist} {dede:channelartlist row=’50’} <url> <loc>{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:typelink/]</loc> <lastmod>[field:id runphp=”yes”]@me=date(‘Y-m-d’);[/field:id]</lastmod> </url> {/dede:channel} {/dede:channelartlist} </urlset>
繼續(xù)修改地圖代碼
下面繼續(xù)修改程序代碼,找到dede后臺目錄,找到 makehtml_map.php 修改,過程繁瑣,直接放上整體代碼如下:
<?php /** * 生成網(wǎng)站地圖 * * @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(“參數(shù)錯誤!”,”-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) ) { //分析遠(yuǎn)程文件路徑 $remotefile = $murl; $localfile = ‘..’.$remotefile; $remotedir = preg_replace(‘#[^/]*.html#’, ”, $remotefile); $ftp->rmkdir($remotedir); if($ftp->upload($localfile, $remotefile, ‘a(chǎn)cii’)) echo “遠(yuǎn)程發(fā)布成功!”.”<br />”; } } //$pv->Clear(); echo “<a href=’$murl’ target=’_blank’>成功更新文件: $murl 瀏覽…</a>”; exit();
使用方法:在你織夢后臺生成的地方,點擊更新網(wǎng)站地圖,那么這個網(wǎng)站地圖的問題就完美結(jié)局了。