hreflang 和 x-default 怎么写才对?
Google 的多语言文档(2026-11-05 核对)有五条规则,漏一条标注就可能被忽略:
| 规则 | 怎么写 |
|---|---|
| 互相指回 | 每个语言版本都要列出全部版本,并指回对方;只有单向的标注会被忽略 |
| 包含自己 | 每个版本的列表里也要有它自己,同一页所有版本的列表完全一样 |
| x-default | 给语言都不匹配的访客:指向语言选择页或默认语言版本,不用写语言代码 |
| 写在哪里 | 页面 head 里的 link、HTTP 头、sitemap 里的 xhtml:link,三种等价,选一种就行,不必三种都写 |
| 语言代码 | 语言用 ISO 639-1(如 ja、ar),可加文字(zh-Hant)或地区(en-GB);只写地区无效;网址要写完整,含 https |
一个真实的例子:MochiStamp 的七种语言
MochiStamp 是做 LINE 贴图的网站,有七种语言版本,每种语言一个独立的网址前缀。阿语和波斯语从右到左书写。
| 语言 | 网址前缀 | hreflang | 书写方向 |
|---|---|---|---|
| 日语 | / | ja | 从左到右 |
| 英语 | /en/ | en | 从左到右 |
| 繁体中文 | /zh-hant/ | zh-Hant | 从左到右 |
| 简体中文 | /zh-hans/ | zh-Hans | 从左到右 |
| 阿拉伯语 | /ar/ | ar | 从右到左 |
| 波斯语 | /fa/ | fa | 从右到左 |
| 俄语 | /ru/ | ru | 从左到右 |
2026-11-05 我们打开线上页面核对了 hreflang。首页列出七种语言,x-default 指向英文版;LINE 贴图尺寸指南只有日、英、繁、简四个版本,列表里就只有这四个;阿语的 WhatsApp 贴图指南列的是英、阿、波斯、俄四个。也就是说,hreflang 只列真实存在的版本,没有为了凑齐七种语言而指向不存在的页面。sitemap.xml 里每个网址条目也带同样的 xhtml:link 和 x-default。
阿语、波斯语(从右到左)要注意什么?
Google 的 hreflang 文档没有讲书写方向,这部分是 MochiStamp 的做法,不是 Google 的规定:
1. 页面声明语言和方向
阿语页面的 html 标签写 lang 为 ar、dir 为 rtl(2026-11-05 线上页面核对)。波斯语同理。
2. 样式只用逻辑方向
样式里用 inline-start、inline-end 这类逻辑方向,不写死 left、right,这样同一份样式在两种方向下都不用改(MochiStamp 的站内规则)。
3. 文案用这种语言本身写
每种语言的页面用该语言写标题、描述和正文,而不是在中文或英文页面外套一层。因为搜索的人用自己的语言提问,这两种语言的真实查询见下一节。
各语言页面实际有多少曝光?
下面是 MochiStamp 在 Search Console 里近 28 天曝光最多的页面(2026-11-05 生成的计分板)。整站近 28 天曝光 2,596 次、点击 67 次。
| 页面 | 近 28 天曝光 |
|---|---|
| /en/guide/size(英语) | 158 |
| /ar/guide/whatsapp-stickers(阿语) | 141 |
| /en/guide/whatsapp-stickers(英语) | 138 |
| /ar/phrases/kimochi(阿语) | 86 |
| /zh-hant/ideas/new-year(繁体中文) | 81 |
| /zh-hant/phrases/koibito(繁体中文) | 71 |
| /fa/phrases/kihon(波斯语) | 53 |
同一个题目,WhatsApp 贴图指南的阿语版有 141 次曝光,英语版 138 次,两者相当;曝光最多的 10 个页面里有 3 个是阿语或波斯语页面。想看这两页的写法,见 MochiStamp 的阿语 WhatsApp 贴图指南;英文版的例子是 MochiStamp 的 LINE 贴图尺寸指南。
但曝光不等于点击。阿语、波斯语的几个查询排在第 5 到 10 位,近 28 天点击都是 0:ملصق زعلان 曝光 12 次、平均排名 6.1;استیکر در جواب مرسی 曝光 13 次、平均排名 8.7。样本很小,单个查询最多十几次曝光,不能由此下结论,只能说明多语言页面确实带来了其他语言的曝光。
hreflang 对 AI 搜索有用吗?
我们没有逐页查 OpenAI、Perplexity 的爬虫文档里有没有提到 hreflang,所以不能说 AI 搜索会读它。hreflang 是 Google 文档里的标注,能确定的是它帮 Google 在搜索结果里给不同语言的用户展示对应版本。对 AI 搜索,下面这些做法不依赖 hreflang,也有用:
1. 每种语言一个独立网址
不要靠脚本或 cookie 切换语言。爬虫按网址抓,同一个网址只有一种语言才能被正确对应。
2. 正文由服务器直接输出
多数 AI 爬虫不执行 JavaScript,见 AI 爬虫会执行 JavaScript 吗。多语言页面如果靠脚本把译文填进去,爬虫读到的是空页面。
3. 每种语言单独写标题和描述
标题和描述对准那种语言里真实有人搜的问题,而不是把英文原样翻译。
4. sitemap 的 lastmod 保持可信
每个语言版本的更新日期按自己的内容变化写,写法见 sitemap 的 lastmod 怎么写才可信。
5. 用审计清单自查一遍
爬虫能不能进、正文能不能读到,按 AI 可见度审计清单 逐项检查。
常见问题
hreflang 一定要写 x-default 吗?
Google 的文档把 x-default 作为语言都不匹配时的回退页面。网站有语言选择页或明确的默认语言时建议写。MochiStamp 的 x-default 指向英文版。
hreflang 写在页面里还是 sitemap 里?
Google 说页面 head 里的 link、HTTP 头和 sitemap 里的 xhtml:link 三种等价,选一种就行。MochiStamp 在页面 head 和 sitemap 里都写了同样的内容。
有些页面只有部分语言,hreflang 怎么写?
只列真实存在的版本。MochiStamp 的 LINE 贴图尺寸指南只有日、英、繁、简四个版本,列表里就只有这四个。
阿语、波斯语页面要做什么特别的处理?
Google 的 hreflang 文档没有讲书写方向。MochiStamp 的做法是页面声明 dir 为 rtl,样式只用 inline-start、inline-end 这类逻辑方向,文案用该语言本身写。
hreflang 会让 ChatGPT 或 Perplexity 引用我吗?
我们没有核实。它们的爬虫文档我们没有逐页查过 hreflang,所以不下结论。更稳妥的是每种语言一个独立网址、正文服务器直出。
出处
- Google Search Central · Tell Google about localized versions of your page (查看于 2026-11-05)
- MochiStamp · WhatsApp stickers guide (Arabic), hreflang and page source (线上页面,2026-11-05 核对)
- MochiStamp · Search Console data, last 28 days (本机数据看板,2026-11-05 读取)
- kagentx 评测:案例页的数据,日期写在每个例子里。