DesenvolvedorWordPress WhatsApp

sprintf é obrigatório quando o texto é traduzível

Se o seu plugin vai ser traduzido, concatenação não é só feia — ela impede a tradução correta.

Falar comigo no WhatsApp

Dica de PHP · publicada em

Quando você escreve __('Olá ') . $nome . __(', você tem ') . $n . __(' pedidos'), o tradutor recebe três fragmentos soltos sem contexto. Em idiomas com ordem de palavras diferente, é impossível traduzir bem.

Com sprintf a frase vai inteira para tradução, com marcadores. E os marcadores posicionais (%1$s) permitem ao tradutor reordenar sem tocar no código.

No WordPress use printf/sprintf junto com esc_html__(), e sempre com o comentário translators: antes, explicando o que é cada marcador — isso aparece no arquivo de tradução e evita erro de quem traduz.

/* translators: 1: nome do cliente, 2: numero de pedidos */
printf(
    esc_html__('Olá %1$s, você tem %2$d pedidos.', 'meu-plugin'),
    esc_html($nome),
    (int) $n
);

Na prática: frase traduzível sempre inteira em sprintf, com marcador posicional e comentário translators:.

Precisa resolver isso no site de um cliente agora?

Me chame no WhatsApp com o contexto. Diagnóstico inicial sem compromisso.

WhatsApp: (43) 99932-9697

ou e-mail: [email protected]

Tem alguma dúvida? Ficarei feliz em ajudar. Clique Aqui