dreamjobs/sitemap-generator

用于生成sitemap.xml文件的Yii2组件。

1.1.3 2017-07-21 22:52 UTC

This package is not auto-updated.

Last update: 2024-09-29 05:07:51 UTC


README

用于生成sitemap.xml文件的Yii2组件

安装

运行

php composer.phar require "dreamjobs/sitemap-generator" "~1.0"

将以下内容添加到您的项目中的composer.json文件

{
	"require": {
  		"dreamjobs/sitemap-generator": "~1.0"
	}
}

然后运行命令

php composer.phar update

配置

编辑"./console/config/main.php"

return [
    'controllerMap' => [
        'sitemap' => [
            'class' => 'dreamjobs\sitemap\SitemapController',
			'baseUrl' => 'https://dreamjobs.com.co',
            'modelsPath' => '@console/models/sitemap', // Sitemap-data models directory
            'modelsNamespace' => 'console\models\sitemap', // Namespace in [[modelsPath]] files
            'savePathAlias' => '@frontend/web', // Where would be placed the generated sitemap-files
            'sitemapFileName' => 'sitemap.xml', // Name of main sitemap-file in [[savePathAlias]] directory
        ],
    ],
];

"./environments/prod/console/config/main-local.php"

'components' => [
    // fix console create url
    'urlManager' => [
        'baseUrl' => 'http://example.com',
    ],
],

"./environments/dev/console/config/main-local.php"

'components' => [
    // fix console create url
    'urlManager' => [
        'baseUrl' => 'http://example.local',
    ],
],

运行命令

php ./init

或者直接将相同的配置应用到您的"/console/config/main-local.php"

此外,您还可以将前端(或公共)的urlManager规则合并到控制台配置中。只需更改"/console/config/main.php"文件

// get config of urlManager from frontend for correctly create urls in console app
$frontend = require(__DIR__ . '/../../frontend/config/main.php');
$frontendUrlManager = [
    'components' => [
        'urlManager' => $frontend['components']['urlManager'],
    ],
];

// ...

// Merge frontend urlManager config with console application main config
return yii\helpers\ArrayHelper::merge($frontendUrlManager, [
    'id' => 'app-console',
    // ...
];

此外,为忽略所有生成的sitemap文件,建议添加.gitignore文件

# sitemaps
/frontend/web/sitemap*.xml

TBD: 创建sitemap-data模型

用法

在项目根目录中运行Yii控制台命令

php ./yii sitemap

然后检查"http://site/sitemap.xml"文件