西部数码主机 | 阿里云主机| 虚拟主机 | 服务器 | 返回乐道官网
当前位置: 主页 > php教程 > dedecms教程 >

Dedecms网站地图获取文章列表支持标签调用的方法

时间:2017-03-31 08:31来源:未知 作者:好模板编辑 点击:
织梦Dedecms网站地图很好用,但sitemap.htm所调用的标签很有限,分析了一下makehtml_map.php?dopost=site这个文件,发现生成视图用的是dedetag.class.php文件,有点简单。 所以不能使用织梦的很多标
织梦Dedecms网站地图很好用,但sitemap.htm所调用的标签很有限,分析了一下makehtml_map.php?dopost=site这个文件,发现生成视图用的是dedetag.class.php文件,有点简单。

所以不能使用织梦的很多标签,例如: 
 
代码如下: 
{dede:arclist titlelen=25 row='25'} 
<a href="[field:arcurl/]">[field:title/]</a> 
{/dede:arclist} 
 
就不能解析出列表。 
 
现在仿照首页的方法,使用arc.partview.class.php,这是一个视图类,可以解析这些标签。 
修改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";//把生成的网站地图放在网站根目录下,data目录一般设置了蜘蛛不抓取 
$tmpfile = $cfg_basedir.$cfg_templets_dir."/".$cfg_df_style."/sitemap.htm";//同时把网站地图模板改在默认的模板文件夹下 
 
现在就可以解析dedecms所有的标签了,包括文章列表标签。
(责任编辑:好模板)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
热点内容