Tradução de string personalizada WPML fora do contêiner

Sep 16 2020

Estou tentando adicionar uma string personalizada para traduzir em wpml, mas quando uso o _e (...) o conteúdo pula para fora do contêiner

se eu usar assim:

echo '<h1>' . $month . ' ' . $day . '</h1>';

o html está ok:

<h1>September 29</h1>

mas se eu usar com tradução assim:

echo '<h1>' . _e($month, 'simultan') . ' ' . $day . '</h1>';

a string traduzida salta de h1:

Septembrie<h1>29</h1>

Respostas

1 GeorgeP Sep 16 2020 at 18:12

Quando você usa _eo eco da string traduzida. Mas você já tem um echouso tão justo __(.

Este é o código correto para o seu exemplo

echo '<h1>' . __('September', 'simultan') . ' ' . $day . '</h1>';

Se você quiser adicionar variáveis ​​em suas traduções, você deve usar sprintfassim:

$date = sprintf ( __('%s %d', 'simultan'), $month, $day );
echo '<h1>' . $date . '</h1>';

Você também pode querer dar uma olhada na função date_i18n já que você está traduzindo datas.

Referência:

Wordpress I18N

manual do sprintf