top of page

Jak zrobić tłumaczenie motywu WordPressa w motywie potomnym


WordPress tłumaczenie motywu potomnego

Jedna taka wpadka, brak kopii bezpieczeństwa i ponowne tłumaczenie 70 fraz motywu na język polski wystarczy, aby raz na zawsze zapamiętać, że własne tłumaczenie gotowego motywu robimy w motywie potomnym. Nawet jeśli w skórce nie wykonywaliśmy żadnych innych zmian w stosunku do oryginału.

Dzisiaj o tym, jak wykonać tłumaczenie motywu WordPressa w ramach motywu potomnego.

Co chcemy uzyskać

Na pierwszym z poniższych obrazków widzimy motyw, który nie zawiera polskiego tłumaczenia (brak plików pl_PL.po.pl_PL.mo w katalogu languages). Na obrazku drugim widzimy efekt, do którego dążymy – wszystkie frazy są w języku polskim. Trzecia ilustracja pokazuje, że zależy nam na wykorzystaniu motywu potomnego.

Wersja oryginalna motywu

Przed


Wersja spolszczona motywu

Po


Motyw potomny

Motyw potomny


Przygotowanie motywu potomnego na tłumaczenie

Oto graficzne ujęcie problemu tłumaczenia motywu w motywie potomnym.

WordPress tłumaczenie motywu w motywie potomnym

Przygotowanie motywu potomnego na tłumaczenie

  1. Krok 1. Tworzymy motyw potomny. Na rysunku wyżej pokazano, jak wygląda poprawnie utworzony motyw potomny. Jeśli nie wiesz, jak tworzy się motywy potomne, przeczytaj ten tutorial.

  2. Krok 2. Przygotowujemy tłumaczenie motywu w formie plików po i mo. Możemy do tego celu wykorzystać np. program poedit. Jeśli nie wiesz, na czym polega tłumaczenie motywu i jak tłumaczy się motyw za pomocą pliku poedit odwiedź ten tutorial.

  3. Krok 3. Wywołujemy funkcję load_child_theme_textdomain. W motywie potomnym tworzymy plik functions.php i wywołujemy w nim funkcję load_child_theme_textdomain. Dzięki tej funkcji pobierane zostaną wszystkie przetłumaczone frazy motywu zgromadzone w pliku pl_PL.mo motywu potomnego.Funkcja load_child_theme_textdomain powinna być wywołana z wykorzystaniem hooka after_setup_theme:

<?php

add_action( 'after_setup_theme', 'my_child_theme_setup' );

function my_child_theme_setup() {
    load_child_theme_textdomain( 'textdomain', get_stylesheet_directory() . '/languages' );
}

?>

textdomain – W przypadku gdy w motywie rodzica nie istniały w ogóle pliki pl_PL.po/pl_PL.mo identyfikator textdomain powinien odpowiadać identyfikatorowi textdomain zdefiniowanemu w motywie rodzica (poszukaj w plikach motywu rodzica wywołania funkcji load_theme_textdomain lub sprawdź, jaki identyfikator używany jest podczas wyświetlania fraz za pomocą funkcji _e lub __ – tu pomocny będzie przykład z plikiem header.php na rysunku wyżej).

W przypadku gdy w motywie rodzica istniały już pliki pl_PL.po/pl_PL.mo (dostarczył je autor motywu), a my w motywie potomnym wprowadziliśmy nowe frazy wymagające tłumaczenia, textdomain powinien dostać zupełnie nową nazwę i to za jej pomocą powinniśmy się odwoływać podczas wyświetlania nowych fraz dodanych w plikach motywu potomnego. Gdy dodatkowo dokonaliśmy zmiany w którymś z plików już istniejących w motywie rodzica (np. single.php), w kopii tego pliku w motywie potomnym powinniśmy – zgodnie z radą WordPress Codex Internationalization – zmienić textdomain na textdomain nadany za pomocą funkcji load_child_theme_textdomain dla motywu potomnego.

Wpisy o podobnej tematyce

  1. [Rozwiązany] problem liczby mnogiej w tłumaczeniu motywu WordPressa

  2. Jak przetlumaczyć motyw (skórkę) WordPressa -tutorial

#Jaktozrobić #WielojęzycznośćwWordPressie

0 wyświetleń0 komentarzy

Ostatnie posty

Zobacz wszystkie
bottom of page