一个用于向应用添加自动XML和HTML网站地图的 CakePHP 插件

安装: 8

依赖项: 0

建议者: 0

安全: 0

星星: 0

关注者: 1

分支: 14

开放问题: 0

类型:cakephp-plugin

3.0.1 2016-05-27 09:36 UTC

This package is auto-updated.

Last update: 2024-09-08 06:47:11 UTC


README

Latest Version Build Status Coverage Status Software License Total Downloads

Sitemap 提供了一种机制,用于显示 CakePHP 可以访问的一组表中的 Sitemap 样式信息(URL、更改频率、优先级和最后修改的日期时间)。

要求

  • CakePHP 3.0.0+
  • PHP 5.6+

安装

$ composer require loadsys/cakephp_sitemap

在你的 config/bootstrap.php 文件中,添加以下内容

Plugin::load('Sitemap', ['bootstrap' => false, 'routes' => true]);

或者

$ bin/cake plugin load Sitemap

使用方法

  • 通过在 Sitemap.tables 中指定一个数组,添加要显示的 Sitemap 记录的表列表
Configure::write('Sitemap.tables', [
	'Pages',
	'Sites',
	'Camps',
]);
  • 同时也要为每个表添加 Sitemap.Sitemap 行为
$this->addBehavior('Sitemap.Sitemap');

配置

  • 默认的 Sitemap 行为配置选项为
'cacheConfigKey' => 'default',
'lastmod' => 'modified',
'changefreq' => 'daily',
'priority' => '0.9',
'conditions' => [],
'order' => [],
'fields' => [],
'implementedMethods' => [
	'getUrl' => 'returnUrlForEntity',
],
'implementedFinders' => [
	'forSitemap' => 'findSitemapRecords',
],
  • 例如,要更改列出记录时的 changefreq,更新相关 TableaddBehavior 方法调用,如下所示
$this->addBehavior('Sitemap.Sitemap', ['changefreq' => 'weekly']);
  • 要自定义每个记录生成的 URL,在对应的 Table 类中创建一个名为 getUrl 的方法。
public function getUrl(\Cake\ORM\Entity $entity) {
	return \Cake\Routing\Router::url(
		[
			'prefix' => false,
			'plugin' => false,
			'controller' => $this->registryAlias(),
			'action' => 'display',
			$entity->display_id,
		],
		true
	);
}
  • 要自定义显示 Sitemap 时使用的模板,CakePHP 手册提供了有关 覆盖插件模板 的信息。

贡献

行为准则

本项目采用了贡献者公约作为其 行为准则。所有贡献者都应遵守此准则。 有可用的翻译

报告问题

请使用 GitHub Issues 列出任何已知缺陷或问题。

开发

在开发此插件时,请进行分支操作,并为任何新开发提交 PR。

设置工作副本

$ git clone git@github.com:YOUR_USERNAME/CakePHP-Sitemap.git
$ cd CakePHP-Sitemap/
$ composer install
$ vendor/bin/phpcs --config-set installed_paths vendor/loadsys/loadsys_codesniffer,vendor/cakephp/cakephp-codesniffer

进行你的更改

$ git checkout -b your-topic-branch
# (Make your changes. Write some tests.)
$ vendor/bin/phpunit
$ vendor/bin/phpcs -p --extensions=php --standard=Loadsys ./src ./tests

然后提交并将你的更改推送到你的分支,并打开一个拉取请求。

许可证

MIT

版权

Loadsys Web Strategies 2016