Kilka miesięcy temu napisałem o problemach ze zmianą domyślnego języka w WordPressie, gdy wyłączone są tłumaczenia w ustawieniach motywu Divi i Extra. Z racji tego, że wyłączenie takie przy obecnie dystrybuowanych tłumaczeniach wydaje się wręcz niezbędne (komputerowe tłumaczenie kontekstowe to nadal komputerowe, nieważne, ile by tam „sztucznej inteligencji” marketing wpompował), ale zarazem jego wyłączenie wpływało na język samego WordPressa i innych wtyczek (język angielski zamiast polskiego) postanowiłem, że muszę coś z tym zrobić… Zwłaszcza że ekipa z Elegant Themes jakby uparła się na to maszynowe tłumaczenie, pomimo „sugestii” użytkowników.

Usuwanie (złych) tłumaczeń (z) Divi Buildera

Teoretycznie mógłbym przygotować pliki z własnym tłumaczeniem, co w WordPressie (zazwyczaj) nie jest trudne, ale w tym przypadku wydawało mi się to działaniem bezsensownym. Ilość tekstów do przetłumaczenia, pojawiające się co chwilę nowe opcje, a więc i nowe teksty, do tego brak w dostępnych w archiwach motywów (DiviExtra) aktualnych plików pozwalających na dokonanie relatywnie wygodnego tłumaczenia, oznaczało dla mnie jedno: szanujmy swój czas, nie tędy droga.

Teoretycznie można by przeanalizować kod PHP motywów (a konkretnie Divi Buildera, który występuje również jako niezależna wtyczka, działający z większością dostępnych na motywów) w poszukiwaniu jakichś filtrów pozwalających wyłączyć wczytywanie plików językowych, ale: szanujmy swój czas, nie tędy droga.

Czasem najprostsze rozwiązania są najlepsze, i tak też chyba jest w tym przypadku. By pozbyć się m.in. „polskawych” tłumaczeń z Divi Buildera (jest to nie tylko niezależna wtyczka, ale też i element motywów DiviExtra) wystarczy skasować pliki z tłumaczeniami.

I tak powstała wtyczka „Languages remover for Divi Builder”, która podczas korzystania z panelu zarządzania WordPressem (WP-Admin) sprawdza, czy są pliki z tłumaczeniami i jeśli je znajdzie, to je usuwa. Regularnie, bo podczas aktualizacji pojawią się ponownie.

Wtyczka monitoruje istnienie następujących plików (kolejno: motyw Divi, motyw Extra, wtyczka Divi Builder):

/themes/Divi/includes/builder/languages/en_US.mo
/themes/Extra/includes/builder/languages/en_US.mo
/divi-builder/includes/builder/languages/en_US.mo

I w razie ich znalezienia, usuwa z katalogów pliki z tłumaczeniami:

/themes/Divi/includes/builder/languages/*.mo
/themes/Extra/includes/builder/languages/*.mo
/divi-builder/includes/builder/languages/*.mo

Po tej operacji pojawi się odpowiednia informacja w panelu zarządzania (w przypadku problemów z usunięciem, np. z powodu braku uprawnień WordPressa do zarządzania plikami na serwerze – również pojawi się stosowna informacja).

Wtyczka „Languages remover for Divi Builder” nie usuwa plików z tłumaczeniami ustawień motywu (backend), bo są one wspólne z tłumaczeniami tekstów, które widzi czytelnik/użytkownik strony (frontend). Ale tutaj jest opcji na tyle mało, i na tyle rzadko coś się tu zmienia, że nie jest to aż takim problemem, jak „polskawy” w Divi Builderze.

Mam świadomość, że jest to metoda dość brutalna/spartańska, ale jest skuteczna. Korzystam z niej od kilku miesięcy, na co najmniej kilkunastu stronach i robi swoje. Nawet kolega, co z angielskim to się całe życie raczej mijali, jest zadowolony. Bo choć czasem musi sprawdzić jakieś słówko w słowniku, to i tak pracuje się na angielskiej wersji Divi Buildera lepiej, niż z „polskawymi” tłumaczeniami, gdzie człowiek się zastanawia, co artysta miał na myśli…

(!) Zgłoś błąd na stronie

Patryk

CEO Webinsider.pl, a do tego CTO, CIO, CFO, CMO, CSO, COO i CRO ;-)
Pasjonat nowych technologii - od sprzętu po oprogramowanie, od serwerów po smartfony i rozwiązania IoT. Potencjalnie kiepski bloger, bo nie robi zdjęć "talerza" zanim zacznie jeść.

Dumny przyjaciel swoich psów :-)