跳到主要内容

多语言站 sitemap:一个索引文件管 40 个语言版本

40 个语言版本、每个几千页,sitemap 怎么组织才不会互相拖累。我们用 2025 年 12 月一个出海 SaaS 的改造,讲清 sitemapindex 的结构、URL 级 hreflang 写法,以及三个常见错。

技术SEO 元析智能

多语言 sitemap 的正确结构只有一种:一个 sitemapindex,按语言拆成子 sitemap,每条 URL 带上其他语言版本的 hreflang 注解。混在一个文件里,超过 5 万条会被截断,权重也分散。

结构长什么样

索引文件只列子文件地址:

<sitemapindex>
  <sitemap><loc>https://example.com/sitemap-zh.xml</loc></sitemap>
  <sitemap><loc>https://example.com/sitemap-en.xml</loc></sitemap>
</sitemapindex>

子文件里每条 URL 带完整语言组:

<url>
  <loc>https://example.com/zh/docs/api</loc>
  <xhtml:link rel="alternate" hreflang="en" href="https://example.com/en/docs/api"/>
  <xhtml:link rel="alternate" hreflang="zh-Hans" href="https://example.com/zh/docs/api"/>
</url>

注意 xhtml 命名空间要声明,漏了整份文件解析失败。

2025 年 12 月那次改造

一个出海 SaaS,40 个语言版本、每个 1500 页左右。之前所有语言塞进一个 sitemap,6 万条 URL 超限被截断,最靠后的 20 个语言版本根本没进文件。hreflang 又只写在 HTML head 里,部分版本模板漏了自引用。

改成分语言 sitemap、URL 级 hreflang、索引文件汇总之后,Google 读到的 URL 从 3.2 万涨到 5.8 万。德语和西语版本的收录率两个月从 30% 到 68%。

三个常见错

  1. 所有语言混一个文件:超 5 万条截断,且各语言互相稀释。
  2. sitemap 和 HTML 的 hreflang 不一致:两处都写可以,但必须一致,冲突时以 HTML 为准。
  3. 没有自引用:语言组里不含自己,整组失效。

40 个版本里,哪些值得进 sitemap

不是所有语言版本都值得提交。判断标准是"有没有独立内容",机翻出来只换了语言、结构和正文都一样的页面,提交了也是重复内容。我们的做法是先给每个语言版本打分:本地化文案、本地案例、本地价格、本地联系方式,四项里占两项以上才进 sitemap,其余的先 noindex,等翻译团队补齐。

那次改造里 40 个版本只提交了 26 个,另外 14 个先挡在 noindex 后面。三个月后补齐内容的 9 个版本陆续放开,收录率都在 60% 以上。

提交和监控

sitemapindex 提交一次就够,子文件增删不用重新提交。GSC 的 sitemap 报告能按子文件看"已发现 URL 数",哪个语言的数字明显偏低,就去看那个语言的模板和 hreflang 组。百度这边对整个 sitemapindex 的支持不如 Google 完善,我们会单独提交几个主力语言的子文件。

生成的工程做法

别手写。让后端按语言和内容类型生成,每次内容发布触发增量更新,lastmod 只改真正变动的那几条。多语言站最怕的是翻译平台回写时把 URL 改了但 sitemap 没跟上,我们在发布流程里加了一步校验:新 URL 必须同时出现在子 sitemap 和对应页面的 hreflang 组里,缺一个就报警。

判断

语言版本少于 5 个的站,不用搞这么复杂,一个 sitemap 加 HTML head 的 hreflang 就够。进入 10 个以上市场、每个市场都有独立内容团队时,sitemap 的组织方式比内容数量更影响收录。

标签:sitemap多语言hreflang
元

元析智能

为软件公司做 SEO 和 GEO 优化

Start with a diagnosis

聊聊你的软件产品

不管你现在是 SaaS、开发者工具还是工程设计软件,只要你想让目标客户搜得到你,我们可以聊。第一次沟通不收费,会给你一份当前的 SEO 诊断,你能看出问题在哪。