點(diǎn)評(píng):Dedecms網(wǎng)站地圖很好用,但sitemap.htm所調(diào)用的標(biāo)簽很有限,下面有個(gè)不錯(cuò)的方法可以解決這個(gè)問(wèn)題Dedecms網(wǎng)站地圖很好用,但sitemap.htm所調(diào)用的標(biāo)簽很有限,分析了一下makehtml_map.php?dopost=site這個(gè)文件,發(fā)現(xiàn)生成視圖用的是dedetag.class.php文件,有點(diǎn)簡(jiǎn)單。所以不能使用織夢(mèng)的很多標(biāo)簽,例如:
代碼如下:
{dede:arclist titlelen=25 row='25'}
<a href="[field:arcurl/]">[field:title/]</a>
{/dede:arclist}
就不能解析出列表。
現(xiàn)在仿照首頁(yè)的方法,使用arc.partview.class.php,這是一個(gè)視圖類,可以解析這些標(biāo)簽。
修改makehtml_map.php如下:
1、將
代碼如下:
require_once(DEDEINC."/dedetag.class.php");
改成
代碼如下:
require_once(DEDEINC."/arc.partview.class.php");
2、將
代碼如下:
$dtp = new DedeTagParse();
$dtp->LoadTemplet($tmpfile);
$dtp->SaveTo($cfg_basedir.$murl);
改成
$dtp = new PartView();
$GLOBALS['_arclistEnv'] = 'index';
$dtp->SetTemplet($tmpfile);
$dtp->SaveToHtml($cfg_basedir.$murl);
3、將
代碼如下:
$dtp->Clear();
改成
//$dtp->Clear();
4、將
代碼如下:
$murl = $cfg_cmspath."/data/sitemap.html";
$tmpfile = $cfg_basedir.$cfg_templets_dir."/plus/sitemap.htm";
改成
$murl = $cfg_cmspath."/sitemap.html";//把生成的網(wǎng)站地圖放在網(wǎng)站根目錄下,data目錄一般設(shè)置了蜘蛛不抓取
$tmpfile = $cfg_basedir.$cfg_templets_dir."/".$cfg_df_style."/sitemap.htm";//同時(shí)把網(wǎng)站地圖模板改在默認(rèn)的模板文件夾下
現(xiàn)在就可以解析dedecms所有的標(biāo)簽了,包括文章列表標(biāo)簽。
更多信息請(qǐng)查看IT技術(shù)專欄