#113286
Paweł Zieliński
Moderatorka

Przetłumaczenie słowa w WordPressie bez używania wtyczki można zrealizować na kilka sposobów, ale najbardziej podstawowym i manualnym jest bezpośrednia edycja plików tematu lub child theme (dziecięcego motywu). Oto jak to zrobić:

Znajdź plik do edycji:

Zlokalizuj plik tematu, który zawiera tekst do przetłumaczenia. Najczęściej będą to pliki w folderze tematu (wp-content/themes/your-theme-name), takie jak functions.php, single.php, page.php itp.
Stwórz child theme (jeśli jeszcze nie istnieje):

Aby uniknąć utraty zmian po aktualizacji tematu, najlepiej jest utworzyć child theme (motyw potomny) i dokonywać zmian w nim. W WordPress Codex https://codex.wordpress.org/ znajdziesz instrukcje, jak to zrobić.
Użyj funkcji gettext:

WordPress używa funkcji gettext do tłumaczenia statycznych ciągów tekstowych. Możesz użyć filtru gettext do zmiany określonych ciągów tekstowych. Dodaj poniższy kod do pliku functions.php w twoim child theme, dostosowując go do swoich potrzeb:


add_filter('gettext', 'translate_text');
add_filter('ngettext', 'translate_text');

function translate_text($translated) {
   $text = array(
       'Original text' => 'Translated text',
       'Another original text' => 'Another translated text',
   );
   $translated = str_ireplace(array_keys($text), $text, $translated);
   return $translated;
}

Zamień ‘Original text’ i ‘Translated text’ na odpowiednio oryginalny tekst w twoim temacie i jego tłumaczenie.
Edytuj pliki tematu bezpośrednio:

Jeśli znasz dokładną lokalizację tekstu, którego chcesz użyć, możesz bezpośrednio edytować pliki tematu (lub child theme), zastępując oryginalny tekst jego tłumaczeniem. Pamiętaj, że ta metoda jest najmniej elastyczna i niezalecana, jeśli planujesz aktualizacje tematu.
Zachowaj backup:

Przed dokonaniem jakichkolwiek zmian, zawsze warto zachować kopię zapasową swojej strony oraz plików tematu.
Pamiętaj, że każda metoda ma swoje plusy i minusy. Użycie filtru gettext jest bardziej elastyczne i nie wpływa negatywnie na możliwość aktualizacji tematu, ale wymaga precyzyjnego określenia tekstu do zmiany. Bezpośrednia edycja plików jest prostsza, ale może być problematyczna przy aktualizacji tematu.