Loco Translate – łatwe tłumaczenie motywów i wtyczek

Loco Translate

Jednym z najgorszych błędów, jakie można zrobić na własnej stronie internetowej, jest pozostawienie na niej nieprzetłumaczonych słów lub całych zdań. Problem pojawia się gdy korzystamy z motywu lub wtyczki, dla których nie istnieje polskie tłumaczenie lub jest ono niekompletne. Wiele blogów (w tym nawet te dość popularne) razi pojedynczymi anglojęzycznymi frazami – „comments”, „latest posts” czy „recent comments” to frazy, które chyba najczęściej pozostają nieprzetłumaczone. Wyjaśnienie tego problemu jest proste, a rozwiązanie jeszcze łatwiejsze – wystarczy skorzystać z darmowej wtyczki Loco Translate i samodzielnie uzupełnić braki w tłumaczeniach.

Nieco ponad dwa lata temu do tłumaczenia motywów i wtyczek polecałem wtyczkę CodeStyling Localization. Niestety, to świetne narzędzie zostało porzucone przez swojego autora, a następnie usunięte z repozytorium z uwagi na liczne błędy uniemożliwiające korzystanie z wtyczki. W poświęconym jej wpisie znajdziecie jednak wciąż aktualne informacje na temat mechanizmu tłumaczeń w WordPressie, a także alternatywnych metod tworzenia tłumaczeń.

Skąd się biorą braki w tłumaczeniach?

Nie ma nic dziwnego w tym, że posługujący się językiem angielskim autor wtyczki czy motywu nie dołącza do swojego produktu polskiego tłumaczenia. Często jednak spotykam się z pytaniem: dlaczego fraza „XYZ” nie jest przetłumaczona na stronie, skoro w panelu administracyjnym WordPressa dokładnie ta sama fraza jest wyświetlana po polsku? Odpowiedź jest ukryta w sposobie działania mechanizmu tłumaczeń WordPressa.

Motywy i wtyczki mają swój unikalny (przynajmniej teoretycznie) identyfikator, do którego są przypisane wszystkie występujące w ich plikach frazy (teksty widoczne na stronie). Identyfikator ten jest używany między innymi w wywołaniach funkcji tłumaczących – aby wyświetlić wspomnianą frazę „Comments”, w pliku motywu umieszcza się na przykład taki kod:

<?php _e('Comments', 'unikalny-identyfikator'); ?>

Sam WordPress jest specyficznym przypadkiem, ponieważ wszystkie frazy w nim występujące mają identyfikator default, z którego nie korzystają (a przynajmniej nie powinny korzystać) motywy i wtyczki. To dlatego frazy przetłumaczone w WordPressie nie koniecznie będą przetłumaczone w motywie lub wtyczce. A ponieważ na naszej stronie widoczne są zwykle frazy pochodzące z motywu lub wtyczki, to mamy wyjaśnienie problemu brakujących tłumaczeń.

Samodzielne tłumaczenie motywów i wtyczek

Po instalacji i aktywacji wtyczki w menu panelu administracyjnego pojawi się nowa sekcja Loco Translate. Jej główna część (Home) wyświetla listę aktywnych wtyczek oraz nazwę aktywnego motywu. Stąd możemy przejść bezpośrednio do tłumaczenia wybranego rozszerzenia lub motywu. Jeśli chcemy zobaczyć listę wszystkich zainstalowanych wtyczek i motywów, wystarczy wybrać z menu Loco Translate odpowiednią opcję (Themes lub Plugins).

Przed rozpoczęciem tłumaczenia warto zajrzeć do ustawień wtyczki (Loco Translate → Settings), gdzie tak naprawdę jedyną interesującą opcją jest liczba zapisywanych wersji tworzonych przez nas plików językowych (Number of backups to keep of each file).

Po kliknięciu w wyświetlaną na liście nazwę wtyczki lub motywu zostaniemy przeniesieni do ekranu edycji tłumaczenia. Wygląd tego ekranu i dostępne opcje różnią się w zależności od stanu tłumaczenia.

Tworzenie pliku .pot

Plik .pot (zwany też szablonem tłumaczenia) zawiera wszystkie możliwe do przetłumaczenia frazy i jest podstawą do stworzenia plików z tłumaczeniem (.po i .mo). Jeśli tłumaczona wtyczka lub motyw nie posiada takiego pliku, możemy go stworzyć samodzielnie. Co ciekawe, możemy również dodać tłumaczenie bez tworzenia pliku .pot – nie jest to jednak zalecane, głównie dlatego, że przy większej liczbie fraz edycja tłumaczenia może działać wolno.

Loco Translate - plik .pot

Aby utworzyć plik .pot musimy skorzystać z opcji Create template. Pojawi się informacja o liczbie plików wchodzących w skład wtyczki oraz o katalogu, w którym zostanie zapisany plik.

Loco Translate - plik .pot

Kliknięcie przycisku Create template uruchomi proces tworzenia pliku .pot. W zależności od wielkości wtyczki może to trwać od kilku do kilkudziesięciu sekund.

Po utworzeniu pliku .pot zostaniemy przeniesieni z powrotem na stronę wtyczki, gdzie zamiast opcji Create template zobaczymy opcję Edit template. Edycja szablonu tłumaczenia pozwala na edycję, dodawanie i usuwanie fraz do przetłumaczenia (co nie ma oczywiście większego sensu) oraz na uaktualnienie szablonu za pomocą przycisku Sync (tę operację wykonujemy gdy do wtyczki lub motywu zostaną dodane nowe frazy).

Tworzenie nowego tłumaczenia

Po kliknięciu linku New language pojawi się ekran z konfiguracją naszego tłumaczenia.

Loco Translate - nowe tłumaczenie

Opcja Choose a language służy do wyboru języka, na jaki będziemy tłumaczyć motyw lub wtyczkę. Opcja Choose a location pozwala na wybór katalogu, w którym zostanie zapisany plik z naszym tłumaczeniem. To ustawienie jest bardzo ważne! Wybranie opcji Author spowoduje, że po aktualizacji wtyczki nasze tłumaczenie zostanie usunięte. Wybór opcji System jest dobry, ale jeśli w repozytorium pojawi się „oficjalne” tłumaczenie, to nadpisze ono nasz plik językowy. Najbezpieczniejszy wydaje się więc wybór opcji Custom.

Aby utworzyć plik językowy i przejść do ekranu edycji tłumaczenia należy kliknąć przycisk Start translating.

Edycja istniejącego tłumaczenia

Niezależnie od tego, czy stworzyliśmy właśnie nowy plik językowy, czy też chcemy uaktualnić plik już istniejący, całą pracę będziemy wykonywać na ekranie edycji tłumaczenia. Możemy dostać się do niego z listy dostępnych języków.

Loco Translate - lista języków

Na liście widać kompletność tłumaczenia (w procentach) oraz liczbę pozostałych do przetłumaczenia fraz.

Loco Translate - edytor

Edytor tłumaczeń jest bardzo prosty. Z listy Source text wybieramy interesującą nas frazę, po czym w polu Polish translation wprowadzamy jej tłumaczenie. Nowe (jeszcze nie zapisane) zmiany są oznaczane gwiazdką, a jeśli takowe istnieją, to przyciski SaveRevert stają się aktywne.

Loco Translate - edytor tłumaczeń

Wprowadzone zmiany zachowujemy klikając przycisk Save, co spowoduje zapisanie pliku .po i wygenerowanie na jego podstawie pliku .mo. Aby wycofać (usunąć) nasze modyfikacje wystarczy kliknąć przycisk Revert.

Wprowdzone i zmodyfikowane tłumaczenia powinny być widoczne na stronie zaraz po ich zapisaniu.

Przycisk Sync służy do uaktualnienia fraz możliwych do przetłumaczenia. Jeśli na liście brakuje nam jakiejś frazy, to albo została ona dodana przez autora w jednej z ostatnich aktualizacji, albo nie jest w ogóle możliwa do przetłumaczenia. O ile w drugiej sytuacji nie jesteśmy w stanie nic zrobić (poza poproszeniem autora o dodanie tekstu do wtyczki lub motywu w prawidłowy sposób), o tyle w pierwszej pomoże nam właśnie przycisk Sync, którego kliknięcie spowoduje przeskanowanie plików i dodanie nowych fraz.

Bezpośredni link