DZWON

Są tacy, którzy czytają tę wiadomość przed tobą.
Zapisz się, aby otrzymywać najnowsze artykuły.
E-mail
Nazwa
Nazwisko
Jak chcesz czytać dzwonek?
Bez spamu

W tym artykule porozmawiamy o tworzeniu i dołączaniu plików tłumaczeniowych, a następnie o tłumaczeniu tekstu we wtyczkach i motywach. Również tutaj pokrótce omówiłem kilka punktów teoretycznych, najczęstszych błędów, jak pracować z programem Poedit. Cóż, dam radę dotyczącą tłumaczeń.

Co przetłumaczyć?

Zanim przejdziemy do tłumaczenia, zdecydujmy, co musimy przetłumaczyć, ponieważ ma to wpływ na to, jak musimy tłumaczyć.

Tłumaczenie motywu / wtyczki z katalogu WordPress

Do takiego tłumaczenia musisz skorzystać ze strony translate.wordpress.org. Co powinno być zrobione:

  1. Zaloguj sie.
  2. Wybierz żądany język tłumaczenia
  3. Znajdź wtyczkę / motyw, który chcesz przetłumaczyć.
  4. I przetłumacz bezpośrednio na stronie.
  5. Po zweryfikowaniu tłumaczenia w obszarze administracyjnym witryny WordPress zobaczysz aktualizacje tłumaczenia wtyczki / motywu.

  6. Aktualizacja. Tłumaczenie gotowe!

Uwaga: Nie wszystkie wtyczki w katalogu obsługują tłumaczenie przez translate.wordpress.org. W takich przypadkach przetłumacz jak zwykle (przeczytaj następny akapit).

Tłumaczenie motywu / wtyczki NIE z katalogu WordPress

W takim przypadku potrzebujesz:

Tłumaczenie twojego motywu / wtyczki

Jak to się robi i jak to działa, opisano poniżej w „Etap 1” i „Etap 2”.

Jeśli planujesz umieścić swoją wtyczkę / motyw w katalogu WordPress. Zdecydowanie zaleca się wykonanie tłumaczenia za pośrednictwem translate.wordpress.org. Więcej na ten temat (po angielsku) (szczegóły nie są opisane w tym artykule).

Jak działa tłumaczenie w WordPressie (teoria)

Musimy zacząć od najważniejszej rzeczy: plików tłumaczeń: .mo .po .pot. PHP działa tylko z plikami .mo, .po i .pot - są przeznaczone dla ludzi i programów tłumaczących.

W WordPressie do tłumaczenia używany jest tylko plik .mo. Podczas generowania strony plik ten jest dołączany - z niego tworzony jest obiekt PHP ze znakami nowej linii i umieszczany w pamięci. Ponadto, podczas używania funkcji translacji w kodzie, tłumaczenie żądanego ciągu jest pobierane z tego obiektu. Tak to działa.

Tak więc, aby przetłumaczyć napisy w motywie / wtyczce, potrzebujemy:

Ważne jest, aby zrozumiećże przy podłączaniu pliku .mo nadawany jest mu identyfikator (parametr domeny $) i taki identyfikator (domena) jest określony dla funkcji translacji napisów. Domena kojarzy plik .mo z funkcjami tłumaczenia. Te. podczas tłumaczenia w funkcji wskazujemy, z którego pliku MO należy pobrać tłumaczenie określonego ciągu. Przykład:

// podłącz plik tłumaczenia MO i określ dla niego identyfikator - mojadomena: load_theme_textdomain ("moja_domena", katalog_szablonu (). "/ języki"); // przetłumacz - podaj ponownie ID - moja_domena: _e ("Komentarz:", "moja_domena");

Etap 1: Stwórz swoją wtyczkę i przetłumacz ją

Jeśli masz już gotowy motyw/wtyczkę i potrzebujesz go po prostu przetłumaczyć, przejdź bezpośrednio do tłumaczenia (etap 2).

Aby proces tłumaczenia był przejrzysty, stwórzmy bardzo prostą wtyczkę i przetłumaczmy ją na język rosyjski. Nazwijmy wtyczkę my-translation-demo. Powinniśmy mieć następującą strukturę wtyczki:

  1. W folderze wtyczek WordPress utwórz folder my-translation-demo: / plugins / my-translation-demo.
  2. W tym folderze utwórz folder lang: / my-translation-demo / lang.
  3. Stwórzmy plik my-translation-demo.php: /my-translation-demo/my-translation-demo.php.
  4. Dodajmy następujący kod do wygenerowanego pliku php:

E () -

Były () -

X () -

N (1) -

N (3) -

N (10) -

Nx (1) -

Nx (3) -

Nx (10) -

esc_attr __ () -

esc_attr_e () -

esc_html __ () -

esc_html_e () -

Wtyczka jest gotowa! Przejdźmy do panelu administracyjnego, aktywuj wtyczkę, przejdź do strony wtyczki.

Wtyczka wykorzystuje wszystkie funkcje tłumaczenia, które ma WordPress. Dołączony jest również plik tłumaczenia myl10n-ru_RU.mo, który jeszcze nie istnieje. Po utworzeniu pliku .mo wtyczka zostanie przetłumaczona (utworzymy ją poniżej).

Zwróć uwagę na parametry podczas tworzenia wtyczki. Muszą być poprawnie określone, aby tłumaczenie nazwy i opisu wtyczki działało na stronie wtyczek.

* Domena tekstowa: myl10n * Ścieżka domeny: / lang

Również w tym celu dodajemy tytuł i opis w funkcji tłumaczenia, aby parser je znalazł.

// ciągi do tłumaczenia nagłówków wtyczek, aby trafiały do ​​pliku .po. __ („Tłumaczenie demo WordPress”); __ („Wtyczka testowa do nauki tworzenia tłumaczeń w WordPressie”);

WordPress używa również parametru Text Domain: do wyszukiwania pliku tłumaczenia. Tam plik powinien mieć nazwę DOMAIN-TRANSFER_LOCAL.mo.

Etap 2: Tłumaczenie. Twórz pliki .mo .po

Aby stworzyć plik MO musimy mieć gotowy plik PO, więc całe zadanie sprowadza się do stworzenia pliku PO.

Istnieje kilka opcji tworzenia pliku PO, tutaj rozważymy pracę z programem Poedit. Najpierw musisz pobrać Poedit i zainstalować go (darmowa wersja pozwala robić wszystko, czego potrzebujemy).

Możesz stworzyć plik PO przez Poedit, ale utworzymy go w niestandardowy sposób - o wiele łatwiej w ten sposób:


Tłumaczenie jest gotowe i działa. Jeśli teraz przejdziesz do strony wtyczki, wszystkie wiersze zostaną przetłumaczone:

Dlaczego wygodnie jest ręcznie utworzyć plik .po, a nie przez program Poedit?

Ponieważ jest to szybsze: w tym przypadku nie trzeba określać żadnych ustawień, wystarczy skopiować kod (z punktu 2) do pliku .po, wgrać ten plik do Poedit, kliknąć „Wyodrębnij z kodu źródłowego”, a następnie "OK" i przetłumacz. (ustawienia można zmienić w samym pliku po, program nie jest do tego potrzebny).

Aby utworzyć plik za pomocą Poedit, potrzebujesz:

  1. Otwórz Poedit.
  2. Wybierz: Plik> Nowy ....
  3. W wyświetlonym oknie wybierz język, na który tłumaczymy.
  4. Okno po prostu zniknie, a my siedzimy głupio „i co dalej?”.
  5. A potem musisz nacisnąć przycisk Zapisać, w wyświetlonym eksploratorze znajdź folder motywu, przejdź do folderu lang, wprowadź nazwę pliku myl10n-ru_RU.po i kliknij OK.
  6. Okno znów znika, a my dalej nudzimy „co teraz robić?”.
  7. Teraz musisz nacisnąć przycisk: Wyciąg ze źródła... Otworzy się okno, w którym należy ustawić ustawienia pliku PO. Wszystko, co jest napisane w kodzie powyższego pliku PO: nazwa projektu, zespół projektowy, kodowania, foldery do zbierania ciągów tłumaczeniowych, słowa kluczowe do wyszukiwania ciągów tłumaczeniowych. Ogólnie rzecz biorąc, tutaj będziesz musiał majstrować i się nie mylić.

    Po ustawieniu ustawień kliknij „OK”.

  8. Następnie czekamy na teraz, ciągi tłumaczeń są pobierane z plików projektu i przechodzimy do okna ciągów tłumaczeń (screen powyżej). Tłumaczymy wiersze, klik Zapisać.
  9. Utworzono tłumaczenie i plik MO!

Aktualizacja tłumaczenia (przy zmianie kodu)

Tutaj wszystko jest niezwykle proste:

  1. Otwarcie Poedit.
  2. Wrzucamy do niego dowolny plik PO z projektu i kliknij "Aktualizuj z kodu"(przycisk na panelu).
  3. Tłumaczymy nowe linie i kliknij "Zapisz"(przycisk na panelu).
  4. Tłumaczenie zaktualizowane! Możesz zamknąć Poedit.

Tworzenie pliku POT

Plik pot jest szablonem tłumaczenia. Jest to bezpośrednia kopia pliku .po, tylko wtedy, gdy nie są tłumaczone żadne wiersze. Te. wszystkie ciągi tłumaczeń pochodzą z plików projektu, ale nic nie zostało jeszcze przetłumaczone.

Z powyższego wynika, aby utworzyć plik POT, którego potrzebujesz przejść przez całą procedurę tworzenia pliku .po, a na koniec niczego nie tłumaczyć, tylko przejść do Plik> Zapisz jako i zapisać plik z rozszerzeniem .pot.

Jeszcze łatwiej jest utworzyć plik POT. Weź plik .po i zmień jego rozszerzenie na .pot. Jest to prosta metoda, ale taki plik z przetłumaczonymi ciągami znaków może być również użyty jako szablon do tworzenia tłumaczenia na dowolny język (przynajmniej tak działa Poedit).

Dlaczego potrzebuję pliku .pot?
Aby istniał jeden plik, w którym ciągi tłumaczeń są zawsze aktualne. Wykorzystanie go jako podstawy do stworzenia tłumaczenia na inny język.

Na przykład, jeśli pliki tłumaczeń PO i MO są umieszczone w globalnym folderze tłumaczeń, nie możemy wgrać pliku PO do programu i kliknąć „Aktualizuj z kodu”, ponieważ w pliku PO ścieżka do plików wtyczek najprawdopodobniej będzie niepoprawny (lub w ogóle go tam nie będzie), a ciągi tłumaczeń nie będą mogły zostać zaktualizowane. W tym przypadku używany jest plik POT, który zawsze powinien znajdować się w folderze wtyczek i gdy kod się w nim zmienia, należy zaktualizować ciągi tłumaczeń, dzięki czemu otrzymujemy zawsze aktualny szablon ciągów tłumaczeniowych.

Jeśli plik PO znajduje się w folderze wtyczek, plik POT nie jest potrzebny, tłumaczenie można utworzyć z pliku PO.

W tym plik do tłumaczenia .mo

Sposób podłączenia pliku MO we wtyczce jest już w powyższym kodzie wtyczki. I tutaj skupię się na funkcjach WordPress do podłączenia tego pliku. Funkcje:

load_plugin_textdomain ($ domena, false, $ plugin_rel_path) Podłącz plik MO z wtyczki. Opakowanie dla load_textdomain (). Najpierw szuka pliku MO w ogólnym folderze tłumaczeń wtyczek: /wp-content/język/wtyczki. Plik musi mieć nazwę DOMAIN_Translation-LOCAL.mo. load_muplugin_textdomain ($ domena, $ plugin_rel_path) Podłącz plik MO z wtyczki MU. Opakowanie dla load_textdomain (). Najpierw szuka pliku MO w ogólnym folderze tłumaczenia wtyczek: /wp-content/język/wtyczki. Plik musi mieć nazwę DOMAIN_Translation-LOCAL.mo. load_theme_textdomain (domena $, ścieżka $) Podłącz plik MO z tematu. Opakowanie dla load_textdomain (). Najpierw szuka pliku MO w folderze tłumaczeń ogólnych motywów: /wp-content/język/motywy. Plik powinien mieć nazwę LOCAL.mo (gdy plik znajduje się w motywie) i FOLDER_THEMES-LOCAL.mo (gdy plik znajduje się w udostępnionym folderze). load_textdomain ($domena, $mofile) Podłącz plik MO z dowolnego miejsca (musisz podać pełną ścieżkę do pliku MO, wraz z nazwą pliku).

Spójrzmy na kilka przykładów łączenia plików MO.

Zakłada się, że kod połączenia będzie znajdował się w głównym pliku plugin/theme lub w pliku znajdującym się w katalogu głównym plugin/theme. Jeśli tak nie jest, __PLIK__ należy zastąpić odpowiednią ścieżką.

// plik tłumaczenia wtyczki. // plik musi mieć nazwę: DOMAIN-LOCAL.mo, na przykład: myl10n-ru_RU.mo add_action ("plugins_loaded", function() (load_plugin_textdomain ("my-plugin", false, dirname (plugin_basename (__ FILE__)) . "/ języki "));)); // plik tłumaczenia dla wtyczki MU. // plik musi mieć nazwę: DOMAIN-LOCAL.mo, na przykład: myl10n-ru_RU.mo load_muplugin_textdomain ("moja-wtyczka", dirname (nazwa_bazy_wtyczki (__ PLIK__)). "/ języki")); // plik tłumaczenia motywu. // plik musi mieć nazwę aktualnej lokalizacji, na przykład: ru_RU.mo add_action („after_setup_theme”, function() (load_theme_textdomain („my_theme”, get_template_directory (). "/ języki");)); // dowolny plik tłumaczenia // Dołącz plik .mo (nazwa pliku: ru_RU.mo lub inny, w zależności od ustawień regionalnych) add_action ("plugins_loaded", function() ($ mo_file_path = dirname (__ FILE__). "/ lang / ". get_locale (). ".mo"; load_textdomain ("mytranslate", $ mo_file_path);)

Nie trzeba podłączać funkcji do hooków, ale w przykładach zrobiłem to zgodnie z zaleceniami.

Uwaga: jeśli plik tłumaczenia znajduje się w, funkcje te można pominąć. WordPress automatycznie łączy pliki tłumaczeń z folderu globalnego na podstawie parametru Text Domain: w nagłówku wtyczki.

Funkcje tłumaczeniowe

Jak korzystać z funkcji tłumaczenia jest już w powyższym kodzie wtyczki. I tutaj opiszę każdą funkcję (przeczytaj szczegółowy opis w opisie funkcji).

__ (tekst $, domena $) Tłumaczy określony tekst i zwraca go do przetworzenia. _e (tekst $, domena $) Tłumaczy określony tekst i wyświetla go na ekranie. _x (tekst $, kontekst $, domena $) Tłumaczy określony tekst w określonym kontekście i zwraca go do przetworzenia. _ex (tekst $, kontekst $, domena $) Tłumaczy określony tekst w określonym kontekście i wyświetla go na ekranie. _n ($ pojedynczy, $ liczba mnoga, $ liczba, $ domena) Pobiera ciąg tłumaczenia liczby pojedynczej lub mnogiej, który pasuje do określonej liczby (1 komentarz, 2 komentarze). _nx ($ pojedynczy, $ liczba mnoga, $ liczba, $ kontekst, $ domena) Pobiera pojedynczy lub mnogi ciąg tłumaczenia w określonym kontekście. _n_noop ($ liczba pojedyncza, $ liczba mnoga, $ domena) Funkcja fikcyjna. Analogowe _n (). Używane, gdy musisz zdefiniować ciągi tłumaczenia dla liczby mnogiej, ale użyj ich gdzieś w dalszej części kodu. Wynik zwracany przez funkcję musi zostać przetworzony za pomocą funkcji translate_nooped_plural() . Wynik działania tej funkcji jest na przykład wygodny w użyciu w parametrach, gdy nie wiemy z góry, jaka będzie liczba, a później musimy dokonać tłumaczenia. _nx_noop ($ liczba pojedyncza, $ mnoga, $ kontekst, $ domena) To samo co _n_noop (), ale z kontekstem. esc_attr __ (tekst $, domena $) Tłumaczenie wartości atrybutów znaczników HTML. Skrót dla esc_attr (__ ()). esc_attr_e (tekst $, domena $) Tak samo jak esc_attr __ (), tylko natychmiast wyświetla wynik na ekranie. esc_html __ (tekst $, domena $) Tłumaczenie tekstu, który może zawierać znaczniki HTML. Skrót dla esc_html (__ ()). esc_html_e (tekst $, domena $) To samo co esc_html __ (), ale natychmiast wyświetla wynik na ekranie.

Błędy podczas korzystania z funkcji tłumaczenia

# 1 Nie można używać zmiennych / stałych w parametrach funkcji translacji

Ponieważ programy mogą analizować tylko ciągi, a nie zmienne. Programy nie analizują tego, co znajduje się w podanej zmiennej, tylko skanują kod jako tekst i wyciągają ciągi do tłumaczenia...

// Tak _e ("Hello World!", "Mydomain"); // Nie _e ($ string, "moja_domena"); _e („Witaj świecie!”, domena $); _e („Witaj świecie!”, DOMENA);

# 2 Nie używaj HTML w ciągach tłumaczeniowych (jeśli to możliwe)

Na przykład, jeśli określisz

w ciągu tłumaczenia, a tłumacz popełni błąd, znacznik HTML może się „zepsuć”. Lub jeśli podasz link , tłumacz może postawić na swoim miejscu, lub po prostu błędnie napisać. Lub dowolny tag HTML może nie być zamknięty i złapiemy bardzo nieprzyjemny błąd układu.

W 90% przypadków znaczniki HTML mogą i powinny być przesunięte poza linię tłumaczenia, rozważ kilka przykładów:

// tak echo "

„. __ („Witaj świecie!”, „Mojadomena”).”

"; // Nie _e ("

Witaj świecie!

"," mojadomena "); // Tak echo str_replace ("
"," ", __ (" Widzieć moje portfolio "," mojadomena ")); // Nie _e (" Zobacz moje portfolio "," mojadomena ");

#3 Nie dziel wyrażenia na osobne słowa

Podczas tłumaczenia łańcuchów w programie, jeśli to możliwe, powinno być jasne, o co chodzi. Ale jeśli podzielisz linię na części, poszczególne słowa mogą stać się niezrozumiałe:

// Tak echo sprintf (__ ("Dzisiaj jestem% d", "moja_domena"), $ lat); // Brak echa __ ("Jestem", "moja_domena"). $ lat. __ („dzisiaj”, „moja_domena”);

# 4 Nie zostawiaj spacji na końcu/początku wiersza (jeśli to możliwe)

Podczas tłumaczenia przerwy na końcach często nie są zauważalne i można je pominąć, w wyniku czego po tłumaczeniu pojawi się „lepkość”. Dlatego lepiej jest usuwać spacje w kodzie.

// Tak _e ("Nazwa książki:", "moja_domena"). "". $ nazwa_książki; // Tak _e ("Nazwa książki:", "moja_domena") "$ Nazwa_książki"; // Nie _e ("Nazwa książki:", "moja_domena"). $ nazwa_książki; W areszcie

Terminy związane z tłumaczeniem

Kilka terminów do poznania. Oto najbardziej podstawowe (niektóre funkcje i haki są nazwane skrótami tych terminów w WordPress):

    Internacjonalizacja (i18n)- to cały kompleks funkcji i klas w rdzeniu, który umożliwia tłumaczenie WordPressa i jego dodatków na różne języki.

    Lokalizacja (lokalizacja - l10n) to sam proces tłumaczenia na różne języki.

  • Widownia to grupa języków i dialektów w regionie. Zazwyczaj język jest po prostu rozumiany jako język, na przykład rosyjski. Ale na przykład angielski może być angielski (US) lub angielski (UK) - język to jeden, ustawienia regionalne są różne ... Ustawienia regionalne są zdefiniowane jako COUNTRY_CODE_Language_Code (ru_RU) lub kod języka w standardzie ISO 639-3 (rus).
, tylko tutaj jest hierarchia plików tłumaczeń...

Udostępniony folder tłumaczeń dla:

  • wtyczki /wp-content/languages/plugins/DOMAIN_Translation-LOCAL.mo.
  • motywy /wp-content/languages/plugins/DOMAIN_Translation-LOCAL.mo.

W takich udostępnionych folderach, na przykład, tłumaczenie wtyczki, która znajduje się w katalogu wtyczek WordPress, jest ładowane i aktualizowane. Prawdopodobnie widziałeś przetłumaczone wtyczki, które nie mają plików tłumaczeniowych (to tylko ten temat). Jak pisałem na początku artykułu, wtyczki z katalogu można tłumaczyć za pośrednictwem strony translate.wordpress.org.

Uwaga: jeśli plik tłumaczenia znajduje się w folderze globalnym, nie ma potrzeby dołączania go do wtyczki za pomocą funkcji load_ (wtyczka / motyw) _textdomain()! WordPress automatycznie połączy go na podstawie parametru Text Domain: w nagłówku wtyczki.

Wtyczka do tłumaczenia

Loco Translate to świetna wtyczka do tworzenia tłumaczeń (plik .mo). Ta wtyczka całkowicie zastępuje program Poedit. Umożliwia tworzenie tłumaczeń dla dowolnego motywu, wtyczki lub pojedynczej wtyczki MU. Wtyczkę można aktywować, tłumaczyć i dezaktywować, aby nie „wchodzić w drogę”.

Sugestie: Szczegóły rozszerzenia .mo Odpowiada na pytania takie jak:

  • Co to jest. miesiąc?
  • Jakiego oprogramowania potrzebuję, aby otworzyć. miesiąc?
  • Plik Jak można. miesiąc otwierać, edytować lub drukować?
  • Jak konwertować. miesiąc pliki do innego formatu?

Mamy nadzieję, że na tej stronie znajdziesz przydatne i wartościowe źródło!

W bazie znaleziono 1 rozszerzeń i 0 aliasów

✅ Plik obiektowy maszyny GNU Gettext

Opis (w języku angielskim):
MO plik jest GNU Gettext Plik obiektu maszyny. GNU gettext jest biblioteką GNU do internacjonalizacji i lokalizacji (i18n). Jest powszechnie używany do pisania programów wielojęzycznych. MO(Machine Object) to skompilowane, odczytywalne komputerowo pliki PO (Portable Object).

Typ MIME: aplikacja / strumień oktetowy

Inne typy plików również mogą używać rozszerzenia pliku .mo.

🚫 Rozszerzenie pliku .mo jest często podawane nieprawidłowo!

Według wyszukiwarki na naszej stronie te literówki były najczęstsze w ciągu ostatniego roku:

ho , mk , jo , poseł , lo, om, ml, mi, ko

Czy to możliwe, że rozszerzenie nazwy pliku jest nieprawidłowe?

Znaleźliśmy w naszej bazie następujące podobne rozszerzenia plików:

🔴 Nie możesz otworzyć pliku .mo?

Po dwukrotnym kliknięciu pliku w celu jego otwarcia system Windows sprawdza rozszerzenie nazwy pliku. Jeśli system Windows rozpozna rozszerzenie nazwy pliku, plik zostanie otwarty w programie skojarzonym z tym rozszerzeniem nazwy pliku. Gdy system Windows nie rozpoznaje rozszerzenia nazwy pliku, pojawia się następujący komunikat:

System Windows nie może otworzyć tego pliku:

Przykład.mo

Aby otworzyć ten plik, system Windows musi wiedzieć, którego programu chcesz użyć do jego otwarcia ...

Jeśli nie wiesz, jak skonfigurować skojarzenia plików .mo, sprawdzać.

🔴 Czy mogę zmienić rozszerzenie pliku?

Zmiana nazwy pliku rozszerzenia pliku nie jest dobrym pomysłem. Zmiana rozszerzenia pliku powoduje zmianę sposobu, w jaki program na komputerze odczytuje plik. Problem polega na tym, że zmiana rozszerzenia pliku nie zmienia formatu pliku.

Jeśli masz jakieś przydatne informacje o rozszerzeniu pliku .mo, !

🔴 Oceń naszą stronę MO

Pomóż nam, oceniając naszą stronę MO w pięciogwiazdkowym systemie ocen poniżej. (1 gwiazdka jest zła, 5 gwiazdek jest świetna)

Pisałam kiedyś na moim blogu, przyda się Wam dokładnie, kto ustala dla siebie angielskie tematy.
Istotą problemu jest to, że często i gęsto anielskie tematy albo nie są tłumaczone na rosyjski, albo tłumaczone krzywo przez automat.
Zamieszczam poradnik jak rusyfikować tematy zachodnich firm deweloperskich.

Spojler


Dzisiaj musiałem zagłębić się w WordPressa. Ponieważ Jestem zwolennikiem poprawnej edycji kodu (czyli zgodnie ze standardem programistów), wtedy postanowiłem przetłumaczyć motyw w nieznany dla mnie sposób, a mianowicie poprzez edycję plików *.po i *.mo. W Internecie jest wiele Talmutów o tym, jak tłumaczyć motywy i wtyczki WordPress na inne języki, ale dzisiaj mówimy konkretnie o * .po i * .mo, a raczej o tym, jak korzystać z darmowego programu do edycji i tworzenia tłumaczeń Poedit i zaoszczędzić 30 minut czasu, który zajęło mi rozwiązanie problemu z Poeditem i sprawić, by działał „tak, jak powinien”.

W folderze tłumaczenia motywu lub samego WordPressa (na przykład język, język, tłumaczenie itp.) każdy język jest reprezentowany przez dwa pliki * .po i * .mo, na przykład us_US.po i us-US.mo
Jeśli plik *.po jest zupełnie zwykłym dokumentem tekstowym, dostępnym do edycji nawet za pomocą notatnika (choć nie jest to zbyt wygodne), to z *.mo nic specjalnego nie zrobisz, bo ten plik jest skompilowany jako specjalny kod i nie jest dostępny do edycji tekstu.
W sieci jest fajne narzędzie do tworzenia i edycji języków interfejsu WordPress za pośrednictwem * .po i * .mo - Poedit. Jest opracowany, że jest przyjemny dla prawie wszystkich znanych systemów operacyjnych Unix, Linux, Windows, MacOS. Fani wiersza poleceń znają też inną tulę, ale tak naprawdę nie pamiętam jej nazwy. Nasz Poedit wygląda tak:

Prosty i nieskomplikowany interfejs, w którym po lewej stronie znajduje się podstawowe tłumaczenie w języku angielskim, a po prawej nasze tłumaczenie na dowolny (nawet w Podonsky, nawet w Komi). Puste pola wyświetlają wersję angielską, co zapobiega błędom i innym błędom.
Więc jaki jest problem ze spędzaniem 30 minut na walce z Poeditem?
Jak się okazało, samo edytowanie pliku *.po nie wystarczy, trzeba jeszcze skompilować *.mo, ale Poedit uparcie odmawiał jego utworzenia. Ściągnąłem różne wersje, wybrałem katalogi, ale wszystko nie pomogło. Jednocześnie wielu użytkowników (niektórzy najwyraźniej specjalna wersja) nie doświadczyło dokładnie żadnego problemu.
Bez skompilowanego pliku *.mo WordPress nie zastosował wprowadzonych przeze mnie poprawek tłumaczeń.
Rozwiązanie
Jak zawsze proste, gdy wiesz gdzie. Iść do Plik->Instalacje i od razu widzimy tam zakładkę Redaktor... Wstawiamy tam haczyk, z którego Kapitan Oczywisty będzie zszokowany. Automatycznie skompiluj plik .mo podczas zapisywania

Szczerze mówiąc, nie bardzo rozumiem, dlaczego to pole wyboru nie jest domyślnie aktywne?! Voila, teraz po edycji otrzymasz oba pliki wymagane do stworzenia tłumaczenia. Możesz poczytać o tym, co z nimi zrobić w necie, nie będę się powtarzał.

Jeśli jest zainstalowany komputer oprogramowanie antywirusowe Móc przeskanuj wszystkie pliki na komputerze, a także każdy plik z osobna... Możesz przeskanować dowolny plik, klikając go prawym przyciskiem myszy i wybierając odpowiednią opcję skanowania pliku w poszukiwaniu wirusów.

Na przykład na tym rysunku plik mój-plik.mo, musisz kliknąć ten plik prawym przyciskiem myszy i wybrać opcję z menu pliku „Skanuj za pomocą AVG”... Wybranie tej opcji spowoduje otwarcie programu AVG Antivirus, który przeskanuje ten plik w poszukiwaniu wirusów.


Czasami błąd może wynikać z nieprawidłowa instalacja oprogramowania, co może być spowodowane problemem napotkanym podczas procesu instalacji. Może zakłócać działanie systemu operacyjnego skojarz plik MO z odpowiednią aplikacją wpływające na tzw "Powiązania rozszerzeń plików".

Czasami proste ponowna instalacja Dymola może rozwiązać Twój problem poprzez prawidłowe połączenie MO z Dymola. W innych przypadkach problemy z skojarzeniami plików mogą wynikać z: słabe programowanie oprogramowania programista i może być konieczne skontaktowanie się z programistą w celu uzyskania dalszej pomocy.


Rada: Spróbuj zaktualizować Dymola do najnowszej wersji, aby upewnić się, że są zainstalowane najnowsze poprawki i aktualizacje.


To może wydawać się zbyt oczywiste, ale często sam plik MO może być przyczyną problemu... Jeśli otrzymałeś plik za pośrednictwem załącznika do wiadomości e-mail lub pobrałeś go ze strony internetowej, a proces pobierania został przerwany (na przykład z powodu przerwy w dostawie prądu lub z innego powodu), plik może być uszkodzony... Jeśli to możliwe, spróbuj uzyskać nową kopię pliku MO i spróbuj otworzyć go ponownie.


Ostrożnie: Uszkodzony plik może spowodować dodatkowe szkody w poprzednim lub istniejącym wcześniej złośliwym oprogramowaniu na komputerze, dlatego bardzo ważne jest, aby zawsze mieć na komputerze zaktualizowany program antywirusowy.


Jeśli twój plik MO związane ze sprzętem na twoim komputerze aby otworzyć plik, którego możesz potrzebować zaktualizuj sterowniki urządzeń związanych z tym sprzętem.

Ten problem zwykle kojarzone z typami plików multimedialnych które zależą od pomyślnego otwarcia sprzętu wewnątrz komputera, na przykład karta dźwiękowa lub karta graficzna... Na przykład, jeśli próbujesz otworzyć plik audio, ale nie możesz go otworzyć, może być konieczne zaktualizuj sterowniki karty dźwiękowej.


Rada: Jeśli podczas próby otwarcia pliku MO otrzymasz Komunikat o błędzie związany z plikiem SYS, problem prawdopodobnie może być związane z uszkodzonymi lub nieaktualnymi sterownikami urządzeń które wymagają aktualizacji. Proces ten można ułatwić, korzystając z oprogramowania do aktualizacji sterowników, takiego jak DriverDoc.


Jeśli kroki nie rozwiązały problemu i nadal masz problemy z otwieraniem plików MO, może to być spowodowane brak dostępnych zasobów systemowych... Niektóre wersje plików MO mogą wymagać znacznej ilości zasobów (np. pamięci / RAM, mocy obliczeniowej), aby poprawnie otworzyć się na komputerze. Ten problem występuje dość często, jeśli używasz dość starego sprzętu komputerowego, a jednocześnie znacznie nowszego systemu operacyjnego.

Ten problem może wystąpić, gdy komputer nie radzi sobie z zadaniem, ponieważ system operacyjny (i inne usługi działające w tle) mogą zużywają zbyt wiele zasobów, aby otworzyć plik MO... Spróbuj zamknąć wszystkie aplikacje na komputerze przed otwarciem pliku symulacji Dymola. Zwalniając wszystkie dostępne zasoby na swoim komputerze, zapewnisz lepsze środowisko do próby otwarcia pliku MO.


Jeśli ty wykonałeś wszystkie powyższe kroki a twój plik MO nadal się nie otwiera, może być konieczne uruchomienie modernizacja sprzętu... W większości przypadków, nawet w przypadku starszych wersji sprzętu, moc obliczeniowa może być nadal więcej niż wystarczająca dla większości niestandardowych aplikacji (chyba że wykonujesz dużo prac wymagających dużej mocy obliczeniowej, takich jak renderowanie 3D, modelowanie finansowe/naukowe lub ciężka praca z multimediami) ... Zatem, prawdopodobnie Twój komputer nie ma wystarczającej ilości pamięci(częściej określane jako „RAM” lub pamięć o dostępie swobodnym), aby wykonać zadanie otwierania pliku.

DZWON

Są tacy, którzy czytają tę wiadomość przed tobą.
Zapisz się, aby otrzymywać najnowsze artykuły.
E-mail
Nazwa
Nazwisko
Jak chcesz czytać dzwonek?
Bez spamu