

Dla nieświadomych, WordPress jest podstawą prawie 43 procent stron internetowych na świecie. Ponadto system zarządzania treścią (CMS) jest dostępny w 205 różnych lokalizacjach. Ponieważ platforma jest globalnym bytem, lokalizacja jest ważna. Proces WordPress i18n jest tutaj kluczowy.
"lift pitch" dla i18n polega na tym, że jest to sposób na przygotowanie kodu motywu i wtyczki do tłumaczenia. Stamtąd można zastosować dokładne tłumaczenia na inne języki, dostosować się do innych kultur i lokalizacji oraz czerpać korzyści.
W tym poście omówimy bardziej szczegółowo WordPress i18n i pokażemy, jak go zastosować. Chociaż będziesz chciał mieć pewną wiedzę na temat kodowania, omówimy również szczegółowo kroki - wraz z tym, czym jest (i co robi) WordPress i18n.
Produkt minionej epoki, "leet speak" jest w pewnym sensie żywy i ma się dobrze w kręgach twórców stron internetowych. Chociaż nie zobaczysz zbyt wielu "l33t" i "n00b", zobaczysz wiele numeronimów: a11y, na przykład, gdy dyskusja dotyczy dostępności.
W rzeczywistości i18n to kolejny numeronim. Oznacza on "internacjonalizację" i składa się z pierwszej i ostatniej litery w połączeniu z liczbą oznaczającą, ile innych liter znajduje się pomiędzy nimi. Lokalizacja ma również swój własny numer: l10n. Istnieją również inne numery, takie jak globalizacja (g11n), europeizacja (e13n) i wiele innych.
Tutaj przyjrzymy się konkretnie internacjonalizacji. W oficjalnym briefie World Wide Web Consortium (W3C ) zauważono, że jest to miejsce, w którym projekt i rozwój umożliwia prostą lokalizację dla użytkowników z różnych kultur, lokalizacji, języków i nie tylko.
Należy pamiętać, że internacjonalizacja to tylko pierwszy krok w procesie tłumaczenia. Następnie należy przeprowadzić lokalizację przy użyciu odpowiedniego rozwiązania tłumaczeniowego.
W przypadku samego procesu i18n istnieje szereg kroków, które programista WordPress podejmie przed przekazaniem go tłumaczowi. W skrócie, proces lokalizacji przebiega następująco:
Tłumacz weźmie plik .pot i użyje go do przeprowadzenia lokalizacji, więc jest to ważna część procedury.
Dla nieświadomych, pliki POT są przykładem tych, które można wygenerować za pomocą narzędzia GNU gettext. Jest to technologia i oprogramowanie z lat 80-tych, które nadal oferuje ogromną wartość dla osób zajmujących się i18n w dzisiejszych czasach.
Wiedza o tym, co to dokładnie jest, nie jest konieczna do przeprowadzenia WordPress i18n, ale warto zrozumieć, co robi w sensie ogólnym i co generuje. Rozważ gettext jako framework, który pomaga WordPressowi tworzyć wielojęzyczne wiadomości.
Często zobaczysz kilka plików powiązanych z gettext:
Mając to wszystko na uwadze, można prawie rozpocząć proces i18n. Po pierwsze, dobrze jest przygotować swoją witrynę WordPress do nadchodzącej pracy.
Podobnie jak w przypadku każdego projektu związanego z podstawowymi plikami WordPress, przed rozpoczęciem należy upewnić się, że instalacja jest "czysta". Warto również upewnić się, że można cofnąć wszelkie wprowadzone zmiany, na wypadek gdyby zdarzył się najgorszy scenariusz i trzeba było je przywrócić.
W związku z tym istnieją dwa prawie nienegocjowalne "kroki wstępne" przed procesem i18n:
W tym drugim przypadku radzimy zaktualizować wtyczki, które chcesz zachować, i usunąć te, które nie spełniają wymagań.
Po raz kolejny będziemy pracować w podstawowych plikach WordPressa, więc będziesz chciał wiedzieć, jak one działają i jaka jest ich zawartość. Niektóre koncepcje, o których będziemy mówić w samouczku, niekoniecznie będą miały wyjaśnienie, chociaż same kroki będą.
Po wykonaniu wszystkich tych punktów można rozpocząć pracę nad procesem i18n.
W następnych kilku sekcjach pokażemy, jak przeprowadzić WordPress i18n z motywami i wtyczkami. Chociaż każda sekcja może być ciężka pod względem kodu i miejscami techniczna, zamierzamy wyjaśnić wszystko tak dokładnie, jak to możliwe, i podać linki do wszelkich dalszych zasobów, których możesz potrzebować.
Zaczniemy od tego, jak umiędzynarodowić swoje motywy.
Pierwszym krokiem jest zaktualizowanie nagłówka motywu, aby zawierał domenę tekstową i ścieżkę domeny. W skrócie:
W tym celu wystarczy dodać kilka słów do pliku nagłówkowego motywu:
/*
Nazwa motywu: My Custom Theme
Autor: Weglot Translate
Domena tekstowa: my-theme
Ścieżka domeny: /languages/
*/
Następnie należy załadować tę domenę tekstową za pomocą "akcji" i "funkcji":
add_action( 'after_setup_theme', 'my_theme_setup' );
function my_theme_setup() {
load_theme_textdomain( 'my-theme', get_template_directory() . '/languages' );
}
Ten zestaw kodu musi znajdować się w pliku functions.php motywu, a nie w pliku witryny. Gdy to zrobisz, możesz rozpocząć "audyt ciągów". Wymaga to zawinięcia wszystkich ciągów tekstowych w motywie w funkcje tłumaczenia. Istnieją dwie funkcje, których będziesz często używać:
Funkcje te wymagają dwóch argumentów: ciągu tekstowego i domeny tekstowej. Na przykład:
__()
$welcome = __( 'Witaj na pulpicie nawigacyjnym!', 'my-theme' );
_e( 'Witaj ponownie!', 'my-theme' );
Podczas gdy tajniki różnych funkcji tłumaczenia wykraczają poza zakres tego artykułu, Podręcznik twórców motywów WordPress zawiera prawie wszystkie informacje potrzebne do wykonania tej pracy.
W tym momencie można utworzyć plik POT. Istnieje wiele rozwiązań, aby to zrobić, ale WordPress poleca Poedit - darmowe i otwarte rozwiązanie.
Po pobraniu i zainstalowaniu Poedit, przejdź do Plik > Nowy na pasku narzędzi:

Następnie utwórz nowy katalog. Możesz kliknąć łącze Wyodrębnij ze źródeł na ekranie głównym:

Następnie wypełnij pola nazwy projektu, zespołu językowego i języka podstawowego na karcie Właściwości tłumaczenia:

Jeśli plik jest nowy, należy zapisać go tutaj (nazwa pliku powinna być taka sama jak slug motywu). Następnie wybierz zakładkę Ścieżki źródeł i znajdź folder /languages/ na swoim komputerze:

Ostatnia karta Sources Keywords będzie listą funkcji tłumaczenia, które zostały użyte w motywie:

Będziesz chciał dodać je tutaj, chociaż znalezienie odpowiednich słów kluczowych może być trudne. Na początek możesz skorzystać z poniższej listy:
__
_e
_x
_ex
_n
_nx
_n_noop
_nx_noop
translate_nooped_plural
number_format_i18n
date_i18n
esc_html__
esc_html__
esc_html_x
esc_attr__
esc_attr_e
esc_attr_x
Po kliknięciu, aby potwierdzić, zapisz zmiany i sprawdź nowe pliki: zobaczysz pliki MO i PO na swoim komputerze. Jeśli zduplikujesz plik PO, możesz dodać rozszerzenie POT, a następnie przejść do lokalizacji.
Początkowe zadanie jest podobne do motywu: najpierw zaktualizuj pola domeny tekstowej i ścieżki domeny wtyczki w nagłówku:
/*
Nazwa wtyczki: My Custom Plugin
Plugin URI:weglot
Opis: Niestandardowa wtyczka do prezentacji tłumaczeń i i18n.
Autor: Weglot Translate
Wersja: 1.0
Author URI:weglot
Text Domain: my-plugin
Domain Path: /languages/
*/
Zalecamy utworzenie folderu /languages/ dla ścieżki domeny i ustawienie go jako ścieżki domeny. Stamtąd można załadować domenę tekstową dla wtyczki, ale tym razem można dodać następującą funkcję do kodu, a nie poprzez functions.php:
load_plugin_textdomain( $domain, $abs_rel_path, $plugin_rel_path );
Jednak to tylko informuje WordPressa, że dostępny jest plik tłumaczenia. Aby go załadować, należy zawinąć funkcję w akcję:
add_action( 'plugins_loaded', 'plugin_load_td' );function plugin_load_td() {
load_plugin_textdomain( 'my-plugin', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
}
Znaczna część audytu ciągów znaków będzie podobna do i18n motywu. Ostatnim krokiem jest wygenerowanie pliku POT przy użyciu tego samego procesu co poprzednio; wygenerowany plik trafi do bieżącego katalogu roboczego
Do tej pory zrozumiałeś już, jak niesamowity może być WordPress i18n. To świetne rozwiązanie, jeśli tworzysz motywy lub wtyczki i chcesz przygotować je do tłumaczenia. Jednak, jak wszystkie wspaniałe rzeczy, ma też pewne wady.
Na przykład, jeśli wtyczka zawiera treści generowane przez użytkowników, nie będą one częścią tłumaczenia i18n.
Proces i18n umożliwi tłumaczenie statycznych elementów, które kodujesz, takich jak tekst przycisku. Jeśli jednak użytkownik chce wprowadzić określoną frazę dla pola, utworzyć unikalne etykiety i inne elementy "po stronie klienta", nie będziesz w stanie ich uwzględnić. W rzeczywistości można to zrobić, ale jest to złożone zadanie i wykracza poza zakres takiego postu.
Ponadto, jeśli nie jesteś programistą, i18n nie pomoże Ci przetłumaczyć witryny. W tym celu będziesz potrzebować wtyczki i możesz przejść do następnej sekcji, aby znaleźć odpowiednią opcję.
Warto również zauważyć, że chociaż wtyczki tłumaczeniowe mogą pomóc na wiele sposobów, witryna będzie potrzebować średnio pięciu wtyczek, aby była w pełni wielojęzyczna. W przeciwieństwie do tego, rozwiązanie takie jak Weglot działa szybko, jest w stanie wykryć wszystkie przetłumaczalne części witryny i jest kompatybilne z prawie każdym motywem i wtyczką. Dzieje się tak niezależnie od tego, czy te motywy i wtyczki są gotowe do tłumaczenia.
Co więcej, Weglot używa motywu, wtyczki i głównych elementów treści z pierwszej strony HTML i umożliwia ich tłumaczenie. W związku z tym nie ma plików .pot i .po, a metoda gettext również nie jest konieczna.
W kategoriach technicznych omówimy teraz lokalizację treści - proces tłumaczenia bezpośredniego.
Dobra strategia tłumaczeniowa nie jest łatwa. To ciężka praca i wymaga wiele planowania, aby upewnić się, że treści docierają do różnych kultur, lokalizacji i języków we właściwy sposób. Nie chodzi tylko o przetłumaczony tekst w treści. Będziesz także chciał wziąć pod uwagę wszystkie poniższe kwestie:
Jeśli korzystasz z e-commerce, również w tym przypadku należy wziąć pod uwagę wiele czynników. Na przykład, upewnij się, że ekran płatności zawiera pełne tłumaczenie wszystkich elementów – zwłaszcza pól dotyczących waluty i podatków:

Co więcej, informacje o wysyłce są kluczowym aspektem, który należy przetłumaczyć w całości i w wysokiej jakości. Chcesz, aby klienci nie mieli wymówki przed kliknięciem przycisku Kup, niezależnie od używanego języka.

Weglot wykonuje wiele ciężkich zadań w Twoim imieniu. Jest to cenny sojusznik w wysiłkach WordPress i18n, ponieważ wykrywa każdy aspekt witryny, który można przetłumaczyć. Stamtąd wykona dla ciebie pierwszą warstwę tłumaczenia maszynowego:

To może być wystarczające dla Twoich potrzeb, ale Weglot może pomóc Ci pójść o krok dalej. Możesz wprowadzać profesjonalne tłumaczenia, edytować istniejące tłumaczenia i wiele więcej. Daje to całą elastyczność potrzebną do przeprowadzenia pełnej lokalizacji witryny.
WordPress jest dostępny niemal na całym świecie. W związku z tym umiędzynarodowione motywy i wtyczki pomogą w tłumaczeniu ich na inne języki. WordPress i18n jest istotnym trybikiem w kole dla programistów, którzy pracują z platformą.
Jeśli możesz umiędzynarodowić swój motyw, aby pomóc użytkownikom tworzyć tłumaczenia bez modyfikowania kodu źródłowego, jesteś w świetnej sytuacji. Jednak samo zastosowanie koncepcji i18n nie oznacza, że motyw lub wtyczka są przetłumaczone.
Aby wykonać ten krok, warto polegać na rozwiązaniu takim jak Weglot. Jest ono kompatybilne z wieloma różnymi platformami i technologiami i fantastycznie współpracuje z WordPressem. Po zakończeniu części i18n przepływu pracy, możesz zwrócić się do Weglot , aby wygenerować dokładne i łatwe do wdrożenia tłumaczenia w prawie każdym języku.
Aby przekonać się samemu, Weglot oferuje 10-dniowy bezpłatny okres próbny bez obowiązku zakupu.