tm / silex-sitemap-service-provider
此包已被弃用,不再维护。未建议替代包。
生成 xml-sitemap 的简单服务提供商。
4.0.0
2017-02-23 09:07 UTC
Requires
- php: >=5.6.0
- silex/silex: ^2.0
Requires (Dev)
- beberlei/assert: ^2.0
- tm/tooly-composer-script: ^1.0
This package is auto-updated.
Last update: 2021-06-11 20:30:37 UTC
README
该服务提供商支持 Silex 的两个主要版本。
安装
针对基于 Silex >= 2.0.0 的应用程序
composer require tm/silex-sitemap-service-provider ^4.0
如果您的应用程序中使用 Silex 1.3.x 或更低版本
composer require tm/silex-sitemap-service-provider ^3.0
基本用法示例
首先您需要注册 ServiceProvider
$app->register(new TM\Provider\SitemapServiceProvider());
可选地,您也可以为生成器设置一些选项
$app->register(new TM\Provider\SitemapServiceProvider(), [ 'sitemap.options' => [ 'charset' => 'ISO-8859-1', 'version' => '1.0', 'scheme' => 'http://www.sitemaps.org/schemas/sitemap/0.8' ] ]);
然后实现 sitemap.xml 的路由,并使用您的自定义逻辑
$app->get('sitemap.xml', function () use ($app) { $host = $app['request']->getSchemeAndHttpHost(); $sitemap = $app['sitemap']; $sitemap->addEntry($host . '/', 1, 'yearly'); $entities = $app['repository.entity']->findAll(50000); foreach ($entities as $entity) { $entityLoc = $app['url_generator']->generate('entity', array('entity' => $entity->getId())); $sitemap->addEntry($host . $entityLoc, 0.8, 'monthly', $entity->getLastModified()); } return $sitemap->generate(); }) ->bind('sitemap');
贡献
请参考 CONTRIBUTING.md 获取有关如何贡献的信息。
开发
在项目目录中运行以下命令以运行测试。
composer install
./vendor/bin/behat