Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 生成站点地图的最佳方法是什么_Php_Laravel_Sitemap - Fatal编程技术网

Php 生成站点地图的最佳方法是什么

Php 生成站点地图的最佳方法是什么,php,laravel,sitemap,Php,Laravel,Sitemap,我需要生成网站地图的网站,可能有非常大的用户贡献的内容数量。我已经阅读了本教程:它给出了如下示例: public function podcasts() { $podcast = Podcast::active()->orderBy('updated_at', 'desc')->get(); return response()->view('sitemap.podcasts', [ 'podcasts' => $podcast, ]

我需要生成网站地图的网站,可能有非常大的用户贡献的内容数量。我已经阅读了本教程:它给出了如下示例:

public function podcasts()
{
    $podcast = Podcast::active()->orderBy('updated_at', 'desc')->get();
    return response()->view('sitemap.podcasts', [
        'podcasts' => $podcast,
    ])->header('Content-Type', 'text/xml');
}
我不喜欢的是,它一次从数据库中获取所有播客,如果你有100万条记录,这会降低所有操作的速度,每次webspider请求站点地图时都会调用这个函数


如果你的站点变得非常大,那么站点地图应该包括所有数据库记录吗?比如说博客文章,如果有500000多篇,还是仅仅最后50000篇,这是一个站点地图文件的最大限制。既然我定期更新我的站点地图,谷歌已经对它们进行了爬网,因此没有必要每次访问站点地图来获取所有数据库记录,那么为什么我要将所有一百万篇博客文章都包括在内并将其拆分为多个站点地图,旧的文章将不会再次被爬网,因此,我最好只买最新的50000个?

试试这个软件包,它可以让您按日期对它们进行排序


站点地图仍然是一种东西吗?