Poproszę po polsku, czyli tłumaczymy WordPressa. Część 2.

Poproszę po polsku, czyli tłumaczymy WordPressa. Część 2.

Jak przetłumaczyć szablon WordPressa bez używania wtyczek? Dowiesz się tego z części drugiej "Poproszę po polsku".

W pierwszej części mogłeś dowiedzieć się, jak wykorzystać wtyczkę Loco Translate do przetłumaczenia szablonu, który jest do tego odpowiednio przygotowany. W części drugiej pokażę Ci jak można zrobić to samo bez pomocy wtyczki.

Przygotowany na tłumaczenie?

Przed rozpoczęciem musisz upewnić się, czy szablon jest przygotowany do tłumaczenia. W pierwszej części pokazałem Ci jak możesz to zrobić pobierając motyw z oficjalnej strony WordPressa. Jednak co w przypadku, gdy pobrałeś szablon z innego źródła lub dostałeś od współpracownika do przetłumaczenia?

Na początku proponuję poszukać plików .po lub .pot w katalogu z motywem. Jeżeli takowe się znajdują, to od razu możemy przejść do tłumaczenia wykorzystując PoEdit. PoEdit jest darmową aplikacją, która ułatwia tłumaczenie aplikacji i stron wykorzystujących mechanizm gettext.

Tłumaczymy przygotowany szablon

W przypadku szablonu attitude przejdź do katalogu library/languages. Znajdziesz tam plik attitude.pot. Jest to plik z tak zwanym szablonem do tłumaczenia. Skopiuj ten plik i zapisz jako pl_PL.po a następnie otwórz w PoEdit. Wygląd programu jest całkiem podobny do wtyczki Loco Translate. Jest bardzo intuicyjny i nie ma co się nad tym rozwodzić, masz tekst źródłowy oraz tłumaczenie, które wypełniasz.

pl_PL.po • Attitude (zmodyfikowano) - Poedit_010

Jedyne co musisz wiedzieć, to że WordPress wykorzystuje skompilowane pliki .mo. Samo przetłumaczenie i zapisanie .po nie wystarczy. Kompilacja jest procesem banalnie łatwym i wykonasz ją wybierając Skompiluj do MO z menu Plik… I tutaj bardzo ważna jest nazwa zapisywanego pliku.

Nazwy plików

Kompilując plik do .mo musisz wiedzieć, jaką nadać nazwę. Funkcja load_theme_textdomain() znajdująca się w każdym przygotowanym do tłumaczenia szablonie, która jest odpowiedzialna za wczytywanie poprawnego pliku językowego wymaga użycia dokładnych ustawień narodowych. Ustawienia narodowe, inaczej również zwane ustawieniami regionalnymi składają się z kodu językowego, znaku podkreślenia i kodu kraju.

Dlatego aby polskie tłumaczenie zadziałało, trzeba nadać nazwę pl_PL.mo, dla niemieckiej de_DE.mo i tak dalej dla innych języków. Inne nazwy plików nie zadziałałyby.

Wiem co z nazwą, ale gdzie zapisać pl_PL.mo?

To zależy.

Jedną z najczęstszych lokalizacji jest nazwa_motywu/languages. W przypadku szablonu attitude jest to attitude/library/languages.

Gdy pobrałeś motyw z internetu – tak jak jest to w naszym przypadku – może się zdarzyć, że twoje pliki z tłumaczeniami umieszczone w attitude/library/languages zostaną nadpisane podczas aktualizacji szablonu. Taka sytuacja może zaistnieć zarówno wtedy, gdy edytowałeś dostępny od początku pl_PL.po jak i w sytuacji, gdy wcześniej tych plików wcale nie było ale aktualizacja szablonu dodała dodatkowe tłumaczenia językowe z taką samą nazwą pliku.

Dlatego znacznie pewniejszym rozwiązaniem jest utworzenie szablonu potomnego i tam zapisywanie swoich modyfikacji.

Jeżeli nigdy wcześniej nie miałeś styczności z motywami potomnymi to jako tymczasowe rozwiązanie polecam umieścić swoje tłumaczenia w katalogu z motywem, tam gdzie znajduje się reszta plików .mo lub .po/.pot. Wkrótce dowiesz się więcej na temat szablonów potomnych, ich roli oraz dlaczego lepiej nie zapisywać niczego bezpośrednio do katalogu z pobranym motywem.

W następnej części “Poproszę po polsku, czyli tłumaczymy WordPressa” dowiesz się co zrobić, gdy szablon nie zawiera żadnych plików .po oraz .mo i co możemy na to poradzić.

Podziel się swoimi spostrzeżeniami w komentarzu.

Kamil Laskowski

Sympatyk systemów otwartoźródłowych. Człowiek z zapałem, doskonale wiedzący, czego chce od życia. W wolnych chwilach uwielbia tańczyć oraz grać na gitarze.