mimvp-sitemap-php 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
mimvp-sitemap-php 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
mimvp-sitemap-php 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
mimvp-sitemap-php 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
mimvp-sitemap-php 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 MIT
开发语言 PHP
操作系统 跨平台
软件类型 开源软件
所属分类 程序开发地图相关
开源组织
地区 国产
提 交 者 sunboy2050
适用人群 未知
收录时间 2017-06-30

软件简介

What is sitemap-php ?

sitemap-php 是一个轻量级、简单快速生成网站地图的开源项目,由北京米扑科技有限公司(mimvp.com)开发分享。

通过简单的配置定义,一个函数createSitemap(),可自动生成sitemap.xml、sitemap.html等网站地图文件,

自动生成的xml、html文件,支持Google、Bing、Baidu等主流搜索引擎收录。

Fast and lightweight class for generating Google sitemap XML files and index of sitemap files.

Written on PHP and uses XMLWriter extension (wrapper for libxml xmlWriter API) for creating XML files. XMLWriter extension is enabled by default in PHP 5 >= 5.1.2.

If you having more than 50000 url, it splits items to seperated files. (In benchmarks, 1.000.000 url was generating in 8 seconds)

示例:

sitemap.xml : http://mimvp.com/sitemap.xml

sitemap.html : http://mimvp.com/sitemap.html

How to use

Sitemap 封装了生成sitemap.xml的属性和方法的类,使用非常简单,示例代码:

function testSitemap() {
	$sitemap = new Sitemap("http://mimvp.com");
	
	 $sitemap->addItem('/', '1.0', 'daily', 'Today');
	 $sitemap->addItem('/hr.php', '0.8', 'monthly', time());
	 $sitemap->addItem('/index.php', '1.0', 'daily', 'Jun 25');
	 $sitemap->addItem('/about.php', '0.8', 'monthly', '2017-06-26');
	 
	 $sitemap->addItem('/hr2.php', '1.0', 'daily', time())->addItem('/index2.php', '1.0', 'daily', 'Today')->addItem('/about2.php', '0.8', 'monthly', 'Jun 25');
	 
	 $sitemap->endSitemap();
}
  • 初始化类对象

$sitemap = new Sitemap("http://mimvp.com");
  • 添加Item

$sitemap->addItem('/', '1.0', 'daily', 'Today');
$sitemap->addItem('/hr.php', '0.8', 'monthly', time());
$sitemap->addItem('/index.php', '1.0', 'daily', 'Jun 25');
$sitemap->addItem('/about.php', '0.8', 'monthly', '2017-06-26');

或者

$sitemap->addItem('/hr2.php', '1.0', 'daily', time())->addItem('/index2.php', '1.0', 'daily', 'Today')->addItem('/about2.php', '0.8', 'monthly', 'Jun 25');
  • 结束文档

$sitemap->endSitemap();
  • 生成结果 sitemap.xml

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
	<url>
		<loc>http://mimvp.com/</loc>
		<priority>1.0</priority>
		<changefreq>daily</changefreq>
		<lastmod>2017-06-26T00:00:00+08:00</lastmod>
	</url>
	<url>
		<loc>http://mimvp.com/hr.php</loc>
		<priority>0.8</priority>
		<changefreq>monthly</changefreq>
		<lastmod>2017-06-26T20:16:23+08:00</lastmod>
	</url>
	<url>
		<loc>http://mimvp.com/index.php</loc>
		<priority>1.0</priority>
		<changefreq>daily</changefreq>
		<lastmod>2017-06-25T00:00:00+08:00</lastmod>
	</url>
	<url>
		<loc>http://mimvp.com/about.php</loc>
		<priority>0.8</priority>
		<changefreq>monthly</changefreq>
		<lastmod>2017-06-26T00:00:00+08:00</lastmod>
	</url>
</urlset>

More Functions

  • 设置根域名

$sitemap = new Sitemap("http://mimvp.com");

也可以修改初始化的域名为

$sitemap->setDomain('http://blog.mimvp.com');
  • 设置保存路径 sitemap.xml默认保存在当前目录下,也可设置文件夹目录,例如: xmls/sitemap,表示sitemap.xml保存在当前目录下的xmls/目录下,其中xmls目录会自动创建。注:支持多级目录

$sitemap->setXmlFile("xmls/sitemap");
$sitemap->setXmlFile("xmls/mimvp/sitemap");
  • 设置是否更多头部

$sitemap->setIsChemaMore(true);

如果设置为true,则sitemap.xml文件头部会增加一些头部信息:

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 	
xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd"
  • 获取当前写入的sitemap文件

$sitemap->getCurrXmlFileFullPath();

Advanced Functions

  1. 指定包含文件,以/开头

$GIncludeArray = array("", "/index.php", "about.php", "hr.php");
  1. 排除特定文件或目录

$GExcludeArray = array("usercenter/", "sadmin/", "admin/", "sitemap.php");
  1. 递归扫描指定目录,默认扫描三层(可自己设定)

function scanRootPath($rootPath=".", $dirLevel=1, $MaxDirLevel=3, &$resArray=array())
  1. 转化 xml + xsl 为 html

function createXSL2Html($xmlFile, $xslFile, $htmlFile, $isopen_htmlfile=false)

Sitemap Demo

  1. 全局变量,G开头

$GCONFIG = array(	"domain"=>"http://mimvp.com",
			"xmlfile"=>"sitemap",
			"htmlfile"=>"sitemap.html",
			"xslfile"=>"sitemap-xml.xsl",
			"isopen_xmlfile"=>true,
			"isopen_htmlfile"=>true,
			"isscanrootpath"=>true,
			"isxsl2html"=>true,
			"isschemamore"=>true);
  1. 生成sitemap.xml

createSitemap();

生成示例:

sitemap.xml 示例

  1. 生成 sitemap.html

createXSL2Html($xmlFile, $xslFile, $htmlFile, $isopen_htmlfile=false);

生成示例:

sitemap.html 示例

You need to submit sitemap.xml and sitemap.html to Google、 Bing、 Baidu,etc.

sitemap-php项目,目前支持指定网页、排除网页、扫描根目录等网站地图;
后期完善时,会增加导出数据库、爬取整个网站等功能,
也希望您的加入,继续完善此项目

sitemap-php All Rights by mimvp.com
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (2)

加载中
打分: 力荐
网站地图生成的神器,从此 sitemap.xml sitemap.html 一个脚本搞定,赞
2017/07/16 12:30
回复
举报
打分: 力荐
米扑科技技术真强大,开源软件真实用,大大大的赞赞赞
2017/07/16 12:29
回复
举报
更多评论
暂无内容
发表于服务端专区
2020/09/24 18:15

sitemap生成-php

class SiteMapController extends Controller { /** * ==============================================XML 格式=========================================================== <?xml version="1.0" encoding="utf-8"?> <!-- XML文件需以utf-8编码--> <urlset> <!--必填标签--> <url> <!--必填标签,这是具体某一个链接的定义入口,每一条数据都要用<url>和<...

0
0
发表于大前端专区
2020/02/05 13:40

Sitemap 相关

百度的 sitemap 文档 [http://www.baidu.com/schemas/sitemap-mobile/1/](http://www.baidu.com/schemas/sitemap-mobile/1/ "http://www.baidu.com/schemas/sitemap-mobile/1/") [http://www.baidu.com/schemas/sitemap-mobile/1/sitemap-mobile.xsd](http://www.baidu.com/schemas/sitemap-mobile/1/sitemap-mobile.xsd "http://www.baidu.com/schemas/sitemap-mobile/1/sitemap-mobile.xsd") [https://ziyuan.baidu.com/coll...

0
0
发表了博客
2018/03/01 15:02

google sitemap

引言 刚开始以为要一个绿色快速通道网页,涵盖常用的地址链接,以便于google的爬虫统计数据,然后看了google sitemap站点文档,原来站点地图是一种文件,您可以通过该文件列出您网站上的网页,从而将您网站内容的组织架构告知 Google 和其他搜索引擎。Googlebot 等搜索引擎网页抓取工具会读取此文件,以便更加智能地抓取您的网站。这有助于访问者以及搜索引擎的机器人找到网站中的页面,有利于网站的分析统计。 step1:首先参考g...

0
0
发表了博客
2020/12/17 18:01

使用@nuxtjs/sitemap给项目添加sitemap(网站地图)

安装使用步骤参照:此博客内容转载博客地址:https://huangliangbo.com/2097 如何使用?(详细图文) 在项目根目录下使用yarn/npm/cnpm 安装 @nuxtjs/sitemap yarn add @nuxtjs/sitemap -Dnpm i @nuxtjs/sitemap -Dcnpm i @nuxtjs/sitemap -D 在项目根目录下找到 nuxt.config.js 往modules添加'@nuxtjs/sitemap' 在项目目录下新建config文件夹,创建sitemap.js文件写入 在nuxt.config.js导入sitemap.js。并添加 sitemap项,在浏览器输入...

0
0
发表了博客
2019/02/14 11:22

sitemap xml文件生成

sitemap xml生成方法 <?php /** * SitemapService.php. * * 生成sitemap */ class Sitemap { public $newLine = "\n"; public $indent = " "; public $xmlHeader = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; public $urlsetOpen = "<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.si...

0
0
发表了博客
2013/05/06 12:11

Magento A-Z和sitemap插件

Magento插件开发 应 用A-Z Tags可以快速大批量添加长尾关键字并生成相应的Tags页面(如http://demo.iifire.com/Mostpopular /B_Mobile_Phones.html),而且可以通过设置重点长尾词使之更高频率的出现从而提高该长尾词的权重,并生成强大的 sitemap.xml(http://demo.iifire.com/sitemap.xml),让google收录更多的页面,进而获取更高的排 名,是Magento外贸商城必备利器。 下面详细介绍一下A-Z Tags插件的功能和使用方式 1.先阅览前台...

0
1
2006/08/10 00:00

在线制作Google Sitemap

找到一个网站可以在线制作Google Sitemap的网站http://www.xml-sitemaps.com/,我倒是已经给这个域名做了一个sitemap,不知道具体用出在哪里,呵呵。管他的,反正,有的服务都尝试尝试…… 本文同步分享在 博客“贺思聪”(other)。 如有侵权,请联系 support@oschina.cn 删除。 本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

0
0
发表了博客
2019/11/15 17:16

百度Sitemap生成器

今天用了两个小时, 为无限影视(https://www.88tv.org)开发了一个小工具, 用来生成baidu的sitemap。 方便用。 因为该电影站的视频内容详情网页的ID是自增长的,所以可以按顺序快速生成。 不用再写爬虫去一个一个链接爬了。 1. 输入URL模板, 注意{*}, 这个是用来放ID的。 2. ID区间,要生成多少到多少的页面链接。 3. 排除ID: 排除这些ID。 4. 更新时间, 这是sitemap中的结构, 一般指该页面的更新时间。 频繁度=更新频繁度...

0
0
2013/11/01 12:50

Build google sitemap Tools

1.www.xml-sitemaps.com/ Create your Google Sitemap Online vs: http://www.zylinkus.com/Build-google-sitemap-Tools

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
2 评论
11 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部