3

我正在尝试内爆一个包含在 i18n 函数中的值数组,如下所示:

<?php echo implode( ', ', __($joblanguages, 'my-text-domain') ); ?>

我收到以下错误消息:

警告:isset 中的非法偏移类型或第 72 行 /Applications/XAMPP/xamppfiles/htdocs/vemas-2012/wp-includes/pomo/translations.php 中为空

有没有办法解决这个问题并获得所选语言的值?

提前致谢!

4

2 回答 2

3

我认为您需要的功能是array_map().

您的问题是 WP 的__()函数想要翻译单个字符串,而您想要一次翻译一大堆字符串。array_map()会为你做这件事。这样的事情应该可以解决问题:

implode(array_map(function($e) {return __($e,'my-text-domain');},$joblanguages);

希望有帮助。

于 2013-01-17T12:42:48.693 回答
1

您的 $joblanguages 是一个数组 - 一开始没有得到它。所以我之前提到的任何事情都不会起作用。

$translated=array();

foreach($joblanguages as $jl){
    $translated[]=__($jl, 'my-text-domain');
}

echo implode( ', ', $translated);

试试这个。

于 2013-01-17T09:33:00.157 回答