• 河南网站建设-郑州网站设计-郑州网站建设-手机建站-郑州建站-上海建站

  • 专注网站建设 服务热线: 13061801310

当前位置:好东东网 > 近期动态 > 网站建设观点 > 正文

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

发布时间:2021-04-30 | 发布者: 东东工作室 | 浏览次数:
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所有的标签了,包括文章列表标签。
 

转载请标注:东东工作室——Dedecms网站地图获取文章列表支持标签调用的方法