搜索全站
multilingual 3 分钟阅读

多语言 WordPress 社交媒体分享卡片:OG 标签按语言输出方法

多语言 WordPress 在社交平台分享时应显示对应语言卡片。本文讲解用 WPML/Polylang 与 SEO 插件按语言输出 OG 标签的实现方法。

U
UFO_PF 2020-02-23 · 阅读 3 分钟
多语 MULTILINGUAL
阅读提示
本文约 968 字,预计阅读 3 分钟。文中命令与配置均经过实测,可直接参考执行。

引言:法语文章分享出去却是英文卡片

你在法文版写了精心标题,分享到 Facebook 却显示英文 OG 标题和英文缩略图——因为 OG 标签只输出了默认语言。社交卡片本地化直接影响点击率。

原理分析:OG 标签的语言来源

og:title、og:description、og:image 由 SEO 插件(Yoast/Rank Math)输出。WPML 下,这些字段在”翻译编辑器”里是独立可译的,正确翻译后前台按语言输出。Polylang 需确保每篇译文单独设了 OG 值,否则回退到原文。Twitter Card 同理需 twitter:title 等按语言。

保姆级实操

  1. WPML + Yoast:翻译文章时在 WPML 编辑器填各语言 SEO 标题/描述,Yoast 自动写入对应 og: 标签。
  2. 手动输出:在 functions.php 用 wp_head 钩子按语言覆盖:
add_action('wp_head', function(){
  if(ICL_LANGUAGE_CODE==='fr'){
    echo '<meta property="og:title" content="'.get_post_meta(get_the_ID(),'og_fr',true).'">';
  }
});
  1. Polylang:用 pll_get_post() 取译文 ID,再读其 OG 自定义字段输出。
  2. 图片本地化:og:image 用对应语言 banner,避免图文不符。
  3. 验证:用 Facebook Sharing Debugger 与 Twitter Card Validator 逐语言测。

常见踩坑

  • 案例:某站法文文章 OG 图用了英文 banner,法国用户以为点错链接,分享点击率低。
  • WPML 没翻译 OG 字段,默认回退英文,社交卡片串语言。
  • 缓存插件把 OG 标签按首次访问语言缓存,后续语言错乱。
  • 没配置 og:locale,Facebook 无法识别语言。

总结

社交卡片本地化靠”OG 字段按语言独立设置 + 缓存按语言拆分”。验证务必逐语言用官方调试器。这与 多语言站点OG/Twitter Card配置 互为补充,需一起做。

U
UFO_PF作者

专注 WordPress 生态的实战作者,内容以「可复制、可验证」为第一原则。

留下你的想法

邮箱地址不会被公开。带 * 的为必填项。