dedecms網(wǎng)站地圖獲取文章列表支持標(biāo)簽調(diào)用的方法

字號(hào):


    點(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è)視圖類(lèi),可以解析這些標(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)簽。