WPML:hreflang 未正确实现



我正在使用WPML作为我的多语言wordpress网站。我在正确实现 hreflang 属性时遇到问题。

根据这篇文章:https://support.google.com/webmasters/answer/189077?hl=enhreflang 标签不仅必须包含已翻译页面的 URL,还必须包含当前页面的 URL。例如,当我在 https://example.com href 标签时,href 标签应如下所示:

<link rel="alternate" hreflang="en" href="https://example.com" />
<link rel="alternate" hreflang="de" href="https://example.com/de" />

这似乎是正确的实现,但是当使用WPML v 2.9时,仅显示翻译后的hreflang标签。例如,当我在 https://example.com 时,它只显示以下内容:

<link rel="alternate" hreflang="de" href="https://example.com/de" />

我已经勾选了WPML>语言>SEO选项中的两个选项:

x Display alternative languages in the HEAD section.
x Add links to the original content with rel="canonical" attributes. 

也许我误解了,并有一个这样的规范标签:

<link rel="canonical" href="https://example.com/" />

足以作为当前页面的 hreflang 标签。感谢您的任何输入。

我正在使用WPML v3.1.8.4,它对我来说工作正常。您可以尝试升级到最新版本吗?

我想

这可能是WPML和另一个插件之间的冲突 - 似乎是WordPress SEO。我在WPML支持论坛的某个地方看到了它

如果您使用的是Yoast Wordpress SEO和WMPL,只需在函数中添加以下内容即可.php

add_filter( 'wpseo_canonical', '__return_false' );

最新更新