我正在使用 i18n 开发 nuxt3 应用程序来处理本地化。
我目前支持 2 种语言,默认为
en-US
并且没有前缀 (strategy: "prefix_except_default"
)。
示例:
基地 -
/routeName/:id/:title
本地化 -
/lang-code/routeName/:id/:title
(:title
被翻译为本地语言)。
我很好奇是否应该将基本路线设置为
</loc/>
,然后将本地化路线设置为rel="alternate"
。
或
我是否应该为翻译语言创建一个全新的站点地图(考虑为纯粹的组织创建一个新的站点地图)。
提前谢谢您:)
我目前只有基本站点地图
实际上,您需要同时执行这两项操作 :) 请参阅 Google 的文档,了解“使用站点地图向 Google 告知您页面的本地化版本”。
本文档页面提供了以下代码示例:
<?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">
<url>
<loc>https://www.example.com/english/page.html</loc>
<xhtml:link
rel="alternate"
hreflang="de"
href="https://www.example.de/deutsch/page.html"/>
<xhtml:link
rel="alternate"
hreflang="de-ch"
href="https://www.example.de/schweiz-deutsch/page.html"/>
<xhtml:link
rel="alternate"
hreflang="en"
href="https://www.example.com/english/page.html"/>
</url>
<url>
<loc>https://www.example.de/deutsch/page.html</loc>
<xhtml:link
rel="alternate"
hreflang="de"
href="https://www.example.de/deutsch/page.html"/>
<xhtml:link
rel="alternate"
hreflang="de-ch"
href="https://www.example.de/schweiz-deutsch/page.html"/>
<xhtml:link
rel="alternate"
hreflang="en"
href="https://www.example.com/english/page.html"/>
</url>
<url>
<loc>https://www.example.de/schweiz-deutsch/page.html</loc>
<xhtml:link
rel="alternate"
hreflang="de"
href="https://www.example.de/deutsch/page.html"/>
<xhtml:link
rel="alternate"
hreflang="de-ch"
href="https://www.example.de/schweiz-deutsch/page.html"/>
<xhtml:link
rel="alternate"
hreflang="en"
href="https://www.example.com/english/page.html"/>
</url>
</urlset>
上面的示例显示了同一 XML 站点地图中列出的所有 3 个区域设置,但是 您可以自由地在单独的站点地图中列出每个区域设置的 URL 。
针对不同网站部分或语言的单独 XML 站点地图实际上是 SEO 方面的一个很好的做法,因为它允许您按站点地图(因此按区域设置)过滤 Google Search Console 的页面索引报告!
为此,请转到 Google Search Console,单击“索引”>“页面”,然后单击“所有已知页面”下拉列表,并在“过滤到站点地图”下选择一个 XML 站点地图。只需以巧妙的方式命名您的站点地图,这样您就可以找到以它们命名的过滤器的方法:)
希望这有帮助!