Muitas vezes, ao traduzir um tema ou plugin no WordPress, podemos nos deparar com palavras capitalizadas onde não deveriam estar, especialmente em português. Com este script simples, você pode remover a capitalização desnecessária em todas as traduções do seu site, inclusive as feitas pelo plugin Loco Translate.

Passo a Passo

1. Acesse o Arquivo functions.php do Seu Tema

Primeiro, acesse o arquivo functions.php do seu tema ativo. Você pode fazer isso através do editor de temas no painel do WordPress ou via FTP.

2. Adicione o Script

Adicione o seguinte script ao final do arquivo functions.php

function remove_unnecessary_capitalization($translation, $text, $domain) {
    // Lista de palavras que não devem ser capitalizadas
    $non_capitalize_words = array('e', 'de', 'da', 'do', 'das', 'dos', 'em', 'a', 'o', 'as', 'os', 'com', 'por', 'para', 'sem', 'sobre', 'entre', 'contra', 'uma', 'um', 'uns', 'umas', 'no', 'na', 'nos', 'nas');

    // Quebrar o texto em palavras
    $words = explode(' ', $translation);

    foreach ($words as $index => $word) {
        // Transformar palavras que não devem ser capitalizadas para minúsculas, exceto se for a primeira palavra da frase
        if ($index !== 0 && in_array(strtolower($word), $non_capitalize_words)) {
            $words[$index] = strtolower($word);
        }
    }

    // Reunir as palavras em um texto novamente
    $translation = implode(' ', $words);

    return $translation;
}

// Usar o filtro 'gettext' para aplicar a função nas traduções
add_filter('gettext', 'remove_unnecessary_capitalization', 10, 3);

Como Funciona

  • Explode: O script quebra o texto em palavras separadas.
  • foreach: Analisa cada palavra.
  • in_array: Verifica se a palavra está na lista de palavras que não devem ser capitalizadas.
  • strtolower: Converte as palavras na lista para minúsculas, exceto se for a primeira palavra da frase.
  • implode: Junta as palavras novamente no texto original.

Aplicação no Loco Translate

Este script é particularmente útil para quem utiliza o Loco Translate, pois remove a capitalização desnecessária nas strings traduzidas, garantindo que a tradução siga a gramática adequada do português.

Conclusão

Com este simples ajuste no functions.php, você garante que as traduções no seu site WordPress estão gramaticalmente corretas, proporcionando uma melhor experiência de leitura para seus usuários. Teste o script e veja como ele pode melhorar a qualidade das suas traduções!

Precisa de mais alguma coisa? Estou por aqui! 

Categorized in:

Traduções, WordPress,