我正在开发Laravel应用程序。现在,我正在尝试使用https://github.com/spatie/laravel-sitemap软件包为我的网站实现站点地图。但是,当我生成sitemap.xml时,该文件中没有路径。
我安装了运行Composer命令的软件包
composer require spatie/laravel-sitemap
然后,我发表了 Composer 。
php artisan vendor:publish --provider="Spatie\Sitemap\SitemapServiceProvider" --tag=config
在routes/web.php中,我添加了此内容。
Route::get('sitemap', function () {
SitemapGenerator::create('http://app.localhost/')->writeToFile('sitemap.xml');
return "Sitemap generated".
});
当我运行代码并生成sitemap.xml时。当我打开sitemap.xml时,便可以在其中找到所有内容。
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">
</urlset>
我在web.php中有很多路由。有什么问题,如何解决?
最佳答案
您可以手动添加其他网址,如下所示,当您运行它时,链接将添加到您的站点地图文件中:
use Spatie\Sitemap\SitemapGenerator;
use Spatie\Sitemap\Tags\Url;
Route::get('sitemap', function () {
SitemapGenerator::create('https://vesicash.com/')->getSitemap()
->add(Url::create('/link1')->setPriority(0.5))
->add(Url::create('/link2')->setPriority(0.5))
->add(Url::create('/link3')->setPriority(0.5))
->add(Url::create('/privacy')->setPriority(0.5))
->writeToFile('sitemap.xml');
return "Sitemap Generated";
});
关于laravel - Spatie Laravel Sitemap生成的xml文件为空,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54074213/