robier / sitemaps
生成网站地图的库
v0.3.5
2017-11-13 15:36 UTC
Requires
- php: ^7.1
Requires (Dev)
- codeclimate/php-test-reporter: ^0.4.4
- friendsofphp/php-cs-fixer: ^2.3
- phpunit/phpunit: ^6.1
README
PHP实现sitemaps.org协议。此库使用PHP生成器构建,旨在尽可能减少内存使用。
支持的网站地图格式
- XML网站地图
- 文本网站地图
此库还支持生成的网站地图的GZip压缩。
用法
use Robier\Sitemaps\DataProvider; class Data implements DataProvider { public function fetch(): \Iterator { for($i = 1; $i <= 500000; $i++){ yield new Location('http://example.com/site-' . $i); } } }
use Robier\Sitemaps\Driver\XML; use Robier\Sitemaps\Generator; use Robier\Sitemaps\Processor\GZip; $writer = new XML('/tmp/', 'http://example.com/'); $generator = new Generator($writer); $generator->data('sitemap', new Data()); // gzip enable $generator->processor(new GZip()); foreach($generator as $item){ // // $item is instance of File/Contract }
安装
composer require robier/sitemaps
Docker
对于开发,您可以使用Docker
tests/docker/build tests/docker/run <command that will be send to docker contener> tests/docker/enter tests/docker/run xdebug <php script>
待办事项
- 实现Atom/RSS格式
- 编写测试
- 添加更好的文档