destoon7.0新增模块地图,自动输出当前模块的地图

       

今天给大家带来的是destoon7.0新增模块地图,并且输出热门搜索tag

 首先在feed目录下新建一个xml.php

代码为:

<?php
define('DT_NONUSER', true);
$moduleid = 3;
require '../common.inc.php';
require DT_ROOT.'/module/'.$module.'/xmlrss.inc.php';
?>

 然后在module/extend/目录下新增一个

xmlrss.inc.php

 代码为:

<?php
defined('IN_DESTOON') or exit('Access Denied');
require DT_ROOT.'/module/'.$module.'/common.inc.php';
header("Content-type: text/xml");
header('HTTP/1.1 200 OK');
$mid or $mid = 4;
$areaid = isset($areaid) ? intval($areaid) : 0;
if($mid > 4 && isset($MODULE[$mid]) && !$MODULE[$mid]['islink']) {
	$moduleid = $mid;
	$module = $MODULE[$mid]['module'];
	$modurl = $MODULE[$mid]['linkurl'];
	$table = get_table($mid);
	$rss_title = $MODULE[$mid]['name'];
	if($MOD['feed_enable']) {
		$pagesize = $MOD['feed_pagesize'] ? intval($MOD['feed_pagesize']) : 50;
		$condition = "status=3";
		if($MOD['feed_enable'] == 2) {
			if($catid) {
				$condition .= $CAT['child'] ? " and catid IN (".$CAT['arrchildid'].")" : " and catid=$catid";
				$rss_title = $rss_title.$DT['seo_delimiter'].strip_tags(cat_pos($catid, $DT['seo_delimiter']));
			}
			if($areaid) {
				$condition .= $ARE['child'] ? " and areaid IN (".$ARE['arrchildid'].")" : " and areaid=$areaid";
				$rss_title = $rss_title.$DT['seo_delimiter'].strip_tags(area_pos($areaid, $DT['seo_delimiter']));
			}
		}
	}
$rss_title = $rss_title.$DT['seo_delimiter'].$DT['sitename'];
$today = timetodate($DT_TIME, 3);
echo  '<?xml version="1.0" encoding="utf-8"?>';
echo  '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">';
	    echo  '<url>';
		echo  '<loc>'.$modurl.'</loc>';
		echo  '<lastmod>'.$today.'</lastmod>';
		echo  '<changefreq>hourly</changefreq>';
		echo  '<priority>0.9</priority>';
		echo  '</url>';

	if($MOD['feed_enable']) {
		$result = $db->query("SELECt itemid,title,introduce,linkurl,addtime FROM {$table} WHERe {$condition} ORDER BY addtime DESC LIMIT 0,$pagesize", 'CACHE');
		while($r = $db->fetch_array($result)) {
        echo  '<url>';
		echo  '<loc>'.$modurl.str_replace('&', '&amp;', $r['linkurl']).'</loc>';
		echo  '<lastmod>'.$today.'</lastmod>';
		echo  '<changefreq>hourly</changefreq>';
		echo  '<priority>0.9</priority>';
		echo  '</url>';
		}
//获取keyword
$keyresult = "SELECT letter,word  FROM {$DT_PRE}keyword WHERe  MODULEID=$moduleid ORDER BY itemid ASC  LIMIT $pagesize";
$resultkey= $db->query($keyresult);
while ($rk=$db->fetch_array(($resultkey)))
{	
 $keywordId = $rk['letter'];  //获取拼音
 $linkkeyurl = $modurl."tags/". $keywordId.".html";//定义模块URL
        echo  '<url>';
		echo  '<loc>'.$linkkeyurl.'</loc>';
		echo  '<lastmod>'.$today.'</lastmod>';
		echo  '<changefreq>hourly</changefreq>';
		echo  '<priority>0.9</priority>';
		echo  '</url>';
}
	} else {
echo  '<url>';
echo  '<loc>'.DT_PATH.'</loc>';
echo  '<lastmod>'.$today.'</lastmod>';
echo  '<changefreq>always</changefreq>';
echo  '<priority>1.0</priority>';
echo  '</url>';
	}
} else {
	dheader('./');
}
echo  '</urlset>';
?>

然后在伪静态下新增:

RewriteRule ^(.*)/baidu(.*).xml$  $1/xml.php?mid=$2

这样就搞定了

http://www.kaotop.com/feed/baidu21.xml

http://www.kaotop.com/feed/baidu22.xml

http://www.kaotop.com/feed/baidu23.xml

http://www.kaotop.com/feed/baidu24.xml

http://www.kaotop.com/feed/baidu25.xml

http://www.kaotop.com/feed/baidu26.xml

http://www.kaotop.com/feed/baidu27.xml

http://www.kaotop.com/feed/baidu28.xml

http://www.kaotop.com/feed/baidu29.xml

http://www.kaotop.com/feed/baidu30.xml

http://www.kaotop.com/feed/baidu31.xml

http://www.kaotop.com/feed/baidu32.xml

http://www.kaotop.com/feed/baidu33.xml

http://www.kaotop.com/feed/baidu34.xml

http://www.kaotop.com/feed/baidu36.xml

 
千行代码,Bug何处藏。 纵使上线又怎样,朝令改,夕断肠。
原文地址:https://www.cnblogs.com/68xi/p/15322094.html