Wordpress:以正确的语言获取自定义字段值 (WPML)

Wordpress: Fetch custom field value in the right language (WPML)

我创建了一个名为“my_custom_field”的自定义字段(使用 ACF 插件)。然后我使用此代码获取该自定义字段的值 工作正常:

echo $output = get_post_meta($data['post_id'], "my_custom_field", true);

我的网站有两种语言(法语和西班牙语)。我使用 WPML 进行翻译。

问题 是 $output 始终显示默认语言(法语)的值,即使 $output 在“西班牙语”页面中加载和打印也是如此。

我想我需要在我的代码中添加一些其他东西来检测语言并相应地显示 $output。

要使 ACF 字段可翻译为 WPML,您需要安装 ACFML 插件,您可以从 WPML 网站上的帐户下载该插件。

使用此插件,您可以使 ACF 字段可翻译。更多你可以阅读官方文档:https://wpml.org/documentation/related-projects/translate-sites-built-with-acf/

这解决了问题:

$wpml_post_id = icl_object_id($data['post_id'], 'page', false,ICL_LANGUAGE_CODE);
echo $output = get_post_meta($wpml_post_id, "my_custom_field", true);