创建xml站点地图非常适合 百度/Google等搜索引擎通知他们的蜘蛛您的所有站点页面及其url以供他们索引,在这篇文章中,Q9源码网将介绍如何创建XML站点地图。

首先,创建一个响应站点地图的路由

Route::get('sitemap.xml', 'BlogController@sitemap');

接下来,创建一个获取所有记录并加载视图的方法。

public function sitemap()
{
    $posts = Post::get();
    return view('sitemap')->with(compact('posts'));
}

在视图中使用请求标头将内容类型设置为 text/xml 并回显 xml 版本。

然后设置一个 urlset 组并在其中循环遍历记录。

在外观内部创建一个包含以下字段的 url 组标签:

loc – 页面的 url
lastmod – 设置 url 上次更新的日期并格式化时区
changefreq – 内容更改的频率
优先级 – 给予什么级别或优先级。

{{ Request::header('Content-Type : text/xml') }}
<?php echo '<?xml version="1.0" encoding="UTF-8"?>';?>

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
    @foreach ($posts as $post)
        <url>
            <loc>{{ url($post->slug) }}</loc>
            <lastmod>{{ $post->updated_at->tz('GMT')->toAtomString() }}</lastmod>
            <changefreq>weekly</changefreq>
            <priority>0.6</priority>
        </url>
    @endforeach
</urlset>

最后一步是将站点地图链接标签添加到 html 的 head 部分:

<link href='{{ url('sitemap.xml') }}' rel='alternate' title='Sitemap' type='application/rss+xml'/>

 

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。