3

次に示すように、i18n関数でラップされた値の配列を内破しようとしています。

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

次のエラーメッセージが表示されます。

警告:72行目の/Applications/XAMPP/xamppfiles/htdocs/vemas-2012/wp-includes/pomo/translations.phpのissetまたはemptyの不正なオフセットタイプ

これを修正して、選択した言語で値を取得する方法はありますか?

前もって感謝します!

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 に答える