itstructure/yii2-sitemap-generator

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

安装: 209

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

开放问题: 0

类型:yii2-extension

1.0.0 2020-07-06 08:05 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:37:03 UTC


README

用于生成sitemap.xml的Yii2组件

这是一个基于Dreamjobs yii2 sitemap generator重新工作的包。

安装

运行命令

composer require itstructure/yii2-sitemap-generator "~1.0.0"

配置

"./console/config/main.php"中设置

return [
    'controllerMap' => [
        'sitemap' => [
            'class' => 'Itstructure\Sitemap\SitemapController',
            'baseUrl' => 'https://example.com',
            '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

待定:创建sitemap-data模型

使用方法

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

php ./yii sitemap