php生成百度站点地图sitemap.xml
<?php
header("Content-type:text/html;charset=utf-8");
//php生成百度站点地图sitemap.xml
//http://www.baidu.com/search/sitemaptools_help.html
include("../config.inc.php");
mysql_connect($CFG['db_host'] ,$CFG['db_user'],$CFG['db_pass']) or die('数据库连接错误!');
mysql_select_db($CFG['db_name']);
mysql_query("set names utf8");
$p=$CFG['tb_pre'];
//查询并获取数据
$query="select `linkurl`,`editdate` from `{$p}table` where `status`='3' order by `itemid` desc limit 1000";
$result=mysql_query($query);
$m=0;
while($info=mysql_fetch_array($result,MYSQL_ASSOC)){
$data_array[$m]['loc']='http://www.example.net/aaa/'.$info['linkurl'];
$data_array[$m]['lastmod']=$info['editdate'];
$data_array[$m]['changefreq']='daily';
$data_array[$m]['priority']='0.8';
$m++;
}
echo "数据读取成功!<br />";
$dom=new DomDocument('1.0', 'utf-8');
//urlset
$urlset=$dom->createElement('urlset');
$dom->appendchild($urlset);
echo "开始为xml加载数据。<br />";
//$attribute_array=array();
foreach ($data_array as $data) {
$url = $dom->createElement('url');
$urlset->appendchild($url);
create_item($dom, $url, $data, $attribute_array);
}
echo "数据加载完毕。<br />";
$filesize=$dom->save("../sitemaps/sell_sitemap.xml");
echo "sell_sitemap create success!<br />";
echo "size:".changeFileSize($filesize)."<br />";
echo "<a href='javascript:window.history.back();'>go back</a><br />";
echo "<a href='../sitemaps/sell_sitemap.xml' target='_blank'>view it</a>";
function create_item($dom, $item, $data, $attribute) {
if (is_array($data)) {
foreach ($data as $key => $val) {
// 创建元素
$$key = $dom->createElement($key);
$item->appendchild($$key);
// 创建元素值
$text = $dom->createTextNode($val);
$$key->appendchild($text);
if (isset($attribute[$key])) {
// 如果此字段存在相关属性需要设置
foreach ($attribute[$key] as $akey => $row) {
// 创建属性节点
$$akey = $dom->createAttribute($akey);
$$key->appendchild($$akey);
// 创建属性值节点
$aval = $dom->createTextNode($row);
$$akey->appendChild($aval);
}
} // end if
}
} // end if
} // end function
function changeFileSize($filesize)
{
if($filesize >= 1073741824)
{
$filesize = round($filesize / 1073741824 ,2) . ' Gb';
} elseif($filesize >= 1048576)
{
$filesize = round($filesize / 1048576 ,2) . ' Mb';
} elseif($filesize >= 1024)
{
$filesize = round($filesize / 1024, 2) . ' Kb';
} else
{
$filesize = $filesize . ' Bytes';
}
return $filesize;
}
?>
php生成百度站点地图sitemap.xml的更多相关文章
- WordPress免插件生成完整站点地图(sitemap.xml)的php代码
让这个代码更加完善,可以同时生成首页.文章.单页面.分类和标签的 sitemap! 一.PHP 代码 <?php require('./wp-blog-header.php'); header( ...
- 织梦后台如何生成站点地图sitemap.xml
第一步在网站根目录建立sitemap.php文件 内容如下: 写一个计划任务文件命名为generate_sitemap.php,放在/plus/task目录里,文件内容如下: <?php//定时 ...
- 分享一个在线生成站点地图SiteMap制作工具
站点地图SiteMap的好处是很大的,对Seo很有好处,能够更方便.迅速的让搜索引擎收录.WordPress 有不少生成Google Sitemap 的工具,但是有些只是针对WordPress的系统的 ...
- [Asp.net]站点地图SiteMap
原文:[Asp.net]站点地图SiteMap 引言 在项目中发现使用站点地图的控件,之前没总结过这方面的东西,就写了一个demo测试了一下,这里记录一下,算是总结吧. Web.sitemap < ...
- 创建Google网站地图Sitemap.xml
Sitemap.xml是google搞出来的,也就是网站地图,不过这个网站地图是用xml写的,而且要按google的标准来写,并且要将写出来的这个文件sitemap.xml上传到自己的服务器空间中去. ...
- 关于ASP.NET 中站点地图sitemap 的使用
在ASP.NET MVC 如此火热的时期,我竟然不适时宜的谈起ASP.NET ,恐怕会引来一阵嘲笑.最为无趣的是,讲解的竟然还是其中的一个控件.oh~~ my god!my out! ^_^ Si ...
- Dynamics CRM2011/2013 站点地图sitemap的翻译
实体.属性字段.ribbon等的翻译可以通过解决方案来解决(具体可见我前面的博客:http://blog.csdn.net/vic0228/article/details/37690913),但解决方 ...
- 自动生成百度小程序sitemap.txt文件路径
因为业务需要,需要在目前项目上开发一个百度小程序,百度智能小程序上线了,但是内容每天得推送,不可能一个小程序路径一个推送吧,因为小程序路径和项目路径不一致. 因为项目是用ThinkPHP开发的,在此附 ...
- 网站地图sitemap.xml的格式
URL列表—XML格式及规范说明: 标签名称 属性 标签说明 标签类型 标签限制 可选/必选 urlset / urlset用来标记整个文档的开头 / / 必选 url / u ...
随机推荐
- 关于MySQL
DBMS - 数据库管理系统(Database Management System) RDBMS - 关系数据库管理系统(Relational Database Management System) ...
- 最短JS判断是否为IE6(IE的写法) (转)
常用的 JavaScript 检测浏览器为 IE 是哪个版本的代码,包括是否是最人极端厌恶的 ie6 识别与检测. 代码如下: var isIE = !!window.ActiveXObject; v ...
- OTP【转】
转自:http://baike.baidu.com/link?url=58z3oZfEMvNRiDUmWrxtzfDhv--UZ1jaW4rBHg1d9kIWd6HQaYZ96DH8QAFopSZBK ...
- SQL —— 一些需要注意的地方(持续更新)
TRUNCATE 只适用全表,没有 WHERE 语句 rownum < N 不能和 group by 一起使用 NULL 值通常会限制索引.在创建表时对某一列指定 NOT NULL 或 DEFA ...
- task判断任务是否存在
tasklist|find /i "qq.exe" ||exit taskkill /im qq.exe /f
- hdu 4405 Aeroplane chess(简单概率dp 求期望)
Aeroplane chess Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)T ...
- android异步任务详解 AsynTask
android提供了一套专门用于异步处理的类.即:AynsTask类.使用这个类可以为耗时程序开辟一个新线程进行处理,处理完时返回. 其实,AsynTask类就是对Thread类的一个封装,并且加入了 ...
- js,正则应用
//获取URL中的request参数 function getUrlParam(name) { var reg = new RegExp("(^|&)" + name + ...
- mac 安装使用 webp 来压缩图片
学习性网站: https://developers.google.com/speed/webp/docs/cwebp http://www.w3ctech.com//topic/1672 https: ...
- 部署在IIS服务器的asp.net 网站,禁止访问指定类型文件
网站上的一些文件不希望用户访问,可以通过下面的方式简单实现.不需写代码(在IIS6下试验过). 第一步,在IIS中实现映射. 哪些文件需要特殊处理. 通俗的将就是将哪种类型的文件交给特定的工厂来处理. ...