destoon添加sitemap.txt地图功能

  2021-02-03    阅读:18
 为了百度seo需要,看百度站长平台可以提交sitemap.txt地图,顺便加了这个功能,供广大爱好者学习参考。
 
首先找到:/module/extend/admin/template/setting.tpl.php
 
<td><?php echo timetodate(filemtime(DT_ROOT.'/sitemaps.xml'));?>   <a href="?moduleid=<?php echo $moduleid;?>&file=sitemap&action=sitemaps" class="t">立即更新</a></td>
</tr>
 
在下面添加:
 
 
<tr>
<td class="tl">更新txt地图</td>
<td><?php echo timetodate(filemtime(DT_ROOT.'/sitemaps.txt'));?>   <a href="?moduleid=<?php echo $moduleid;?>&file=sitemap&action=sitemaptxt" class="t">立即更新</a></td>
</tr>
 
然后找到文件:/module/extend/admin/sitemap.inc.php
 
找到以下代码:
 
 
if($action == 'sitemaps') {
tohtml('sitemaps', $module);
msg('SiteMaps 更新成功', '?moduleid='.$moduleid.'&file=setting#sitemaps');
}
 
在下面添加:
 
else if($action == 'sitemaptxt'){
tohtml('sitemaptxt', $module);
msg('SiteMaps 更新成功', '?moduleid='.$moduleid.'&file=setting#sitemaps');
}
 
最后在/module/extend/目录下新建一个:sitemaptxt.htm.php 文件
 
添加以下代码:
 
<?php
defined('IN_DESTOON') or exit('Access Denied');
if(!$MOD['sitemaps']) {
file_del(DT_ROOT.'/sitemaps.txt');
return false;
}
$moodule_count= count($mods);//模块个数
$mods = explode(',', $MOD['sitemaps_module']);
$nums = intval($MOD['sitemaps_items']*1.2);//尽量凑成5万条
$data .= DT_PATH;
$data .= "\r\n";
//archiver输出
$archiver=$CFG['url'].'archiver/';
$data .= $archiver;
$data .= "\r\n";
foreach($mods as $mid) {
$indexhtm='index-htm-mid-';
$htm='.html';
$midurl=$archiver.$indexhtm.$mid.$htm;
$data .= $midurl;
$data .= "\r\n";
}
//archiver输出end
$item = '';
foreach($mods as $mid) {
if(isset($MODULE[$mid]) && !$MODULE[$mid]['islink'] && !$MODULE[$mid]['domain']) {
if($mid == 4 && $CFG['com_domain']) continue;
$url = $MODULE[$mid]['linkurl'];
$data .= $url;
$data .= "\r\n";
if($nums) {
$fields = $mid == 4 ? 'linkurl' : 'linkurl,edittime';
$order = $mid == 4 ? 'userid' : 'addtime';
$condition = $mid == 4 ? "catids<>''" : "status>2";
$result = $db->query("SELECt $fields FROM ".get_table($mid)." WHERe $condition ORDER BY $order DESC LIMIT $nums");
while($r = $db->fetch_array($result)) {
$item .= xml_linkurl($r['linkurl'], $url);
$item .= "\r\n";;
}
}
}
}
$data .= $item;
//$data = str_replace('><', ">\n<", $data);
file_put(DT_ROOT.'/sitemaps.txt', $data);
foreach($mods as $mid) {
if(isset($MODULE[$mid]) && !$MODULE[$mid]['islink'] && $MODULE[$mid]['domain']) {
if($mid == 4 && $CFG['com_domain']) continue;
$url = $MODULE[$mid]['linkurl'];
$data .= $url;
$data .= "\r\n";
foreach(cache_read('category-'.$mid.'.php') as $c) {
$data .= $url.$c['linkurl'];
$data .= "\r\n";
}
$item = '';
$nums = intval($MOD['sitemaps_items']);
if($nums) {
$fields = $mid == 4 ? 'linkurl' : 'linkurl,edittime';
$order = $mid == 4 ? 'userid' : 'addtime';
$condition = $mid == 4 ? "catids<>''" : "status>2";
$result = $db->query("SELECT $fields FROM ".get_table($mid)." WHERe $condition ORDER BY $order DESC LIMIT $nums");
while($r = $db->fetch_array($result)) {
$item .=xml_linkurl($r['linkurl'], $url);
$item .= "\r\n";
}
}
$data .= $item;
$data .= "\r\n";
//$data = str_replace('><', ">\n<", $data);
file_put(DT_ROOT.'/'.$MODULE[$mid]['moduledir'].'/sitemaps.txt', $data);
}
}
return true;
?>

免责声明:
本站部份内容系网友自发上传与转载,不代表本网赞同其观点;
如涉及内容、版权等问题,请在30日内联系,我们将在第一时间删除内容!

相关Destoon技术

(c)2012-2021 www.destoon.info All Rights Reserved
慧一科技工作室   
  QQ咨询

购买模板 售前咨询

  咨询QQ

3292628658
(早8:30-晚10:00)

  微信咨询

咨询微信
客服微信

  返回顶部