bringyourownideas / laravel-sitemap
一个简单的网站爬虫和sitemap生成器,适用于Laravel 5.8+
3.0.0
2022-11-15 18:00 UTC
Requires
- php: ^7.3|^8.0
- guzzlehttp/guzzle: ^7.2
- laravel/framework: ^6.20.12||^7.30.3||^8.4||^9.2
- nesbot/carbon: ^2.41
- spatie/robots-txt: ^1.0||^2.0
- vdb/php-spider: ^v0.6.3
Requires (Dev)
- symfony/thanks: ^1.0
README
使用php-spider和SimpleXMLElement生成sitemap.xml文件的一个简单的网站爬虫。该文件将存储在public/
目录中。它通常与SEO友好的CommonMark Blog Package一起使用,在bring your own ideas。
sitemap生成器使用元标签article:modified_time
来识别最后修改时间。Noindex
在robots元标签将被考虑,页面将被排除。如果文档中设置了canoncial URL,则将使用此URL。优先级根据页面在网站中的深度进行猜测。
为什么需要sitemap.xml?
搜索引擎通过sitemap更快地识别网站上的更改页面并减少爬取工作量。虽然技术上不需要sitemap,但它可以极大地支持您提高排名的努力。
支持
此包支持Laravel 6-9。
安装
该包使用composer管理。您可以使用以下命令安装它:
composer require bringyourownideas/laravel-sitemap
这确保您将自动接收后续更新。或者,您可以使用GitHub上的下载功能手动安装该包(不建议)。
使用
该包注册了一个名为sitemap:generate
的artisan命令。这将触发对您网站的爬取并生成sitemap。为了方便起见,您可以将此步骤添加到您的部署步骤中。
定期更新sitemap
如果您希望定期更新sitemap.xml,您可以在app/Console/Kernel.php
中的schedule函数中添加一行新代码:
/** * Define the application's command schedule. * * @param \Illuminate\Console\Scheduling\Schedule $schedule * @return void */ protected function schedule(Schedule $schedule) { $schedule->command('sitemap:generate')->daily(); // ...or with a defined time... $schedule->command('sitemap:generate')->daily()->at('02:50'); }
MISC: 未来想法/开发、问题,贡献,许可证
此包由Peter Thaleikis开发,并由bring your own ideas Ltd.支持。Bring Your Own Ideas Ltd.帮助您将项目想法变为现实!联系我们讨论您的新冒险!