webit / sitemap-bundle
Web-IT Sitemap Bundle
2.0.0
2020-01-24 10:37 UTC
Requires
- php: >=5.6.9
- jms/serializer-bundle: ^1.0.0|^2.0.0
- symfony/framework-bundle: ^2.1|^3.0|^4.0
- webit/sitemap: ^2.0.0
This package is auto-updated.
Last update: 2024-08-24 20:34:05 UTC
README
Sitemap Symfony 2 集成
安装
Composer: 在 composer.json 中添加 webit/sitemap-bundle
{ "require": { "php": ">=5.3.2", "webit/sitemap-bundle": "dev-master" } }
使用方法
在 Kernel 中注册 Bundle
添加以下行
// in AppKernel::registerBundles()
$bundles = array(
// ...
new Webit\Bundle\SitemapBundle\WebitSitemapBundle(),
// ...
);
创建实现 Webit\Sitemap\Exposer\UrlExposerInterface 的类
namespace MyProject; use Webit\Sitemap\Exposer\UrlExposerInterface; use Webit\Sitemap\Model\UrlSet; class MyExposer implements UrlExposerInterface { /** * @return UrlSet */ public function getUrlSet() { $urlSet = new UrlSet(); $url = new Url(); $url->setLocation('http://page.url/my-site'); $urlSet->addUrl(new Url()); // add to $urlSet all urls you need return $urlSet; } }
在 Service Container 中注册您的 UrlExposer 并标记为 webit_sitemap.url_exposer
<?xml version="1.0" encoding="UTF-8" ?> <container xmlns="https://symfony.ac.cn/schema/dic/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://symfony.ac.cn/schema/dic/services https://symfony.ac.cn/schema/dic/services/services-1.0.xsd"> <parameters> <parameter key="my_project.my_exposer.class">MyProject\MyExposer</parameter> </parameters> <services> <service id="my_project.my_exposer" class="%my_project.my_exposer.class%"> <tag name="webit_sitemap.url_exposer" /> </service> </services> </container>
或者
parameters: my_project.my_exposer.class: MyProject\MyExposer services: my_project.my_exposer: class: %my_project.my_exposer.class% tags: - { name: webit_sitemap.url_exposer }
导入 sitemap 路由
sitemap: prefix: / resource: @WebitSitemapBundle/Resources/config/routing.xml