W momencie kiedy tworzymy wtyczkę lub szablon i wiemy, że będzie obsługiwać języki wtedy potrzebujemy wygenerować pliki .po .mo oraz w szablonie muszą znajdować się odpowiednie funkcje zamiast zwykłego tekstu.
W tym poradniku dowiesz się jakie wtyczki będą Ci przydatne oraz jak włączyć obsługę wielu języków w WordPressie. Zapraszam 🙂
Zmiana zwykłego tekstu w kodzie
Na początek powinniśmy zamienić fragmenty tekstów, które są na sztywno w kodzie, na funkcję zawierającą ten tekst i informującą WordPressa, że ten tekst jest tekstem z możliwością obsługi wielu języków.
Przykład zwykłego tekstu[kod]$przyklad = 'Przykładowy tekst’;
echo 'Przykładowy tekst 2′;[/kod]Tekst zamieniamy na funkcję _e(); lub __(); w zależności czy chcemy, go wyświetlić od razu, czy przekazać jako string w inne miejsce.[kod]$przyklad = __(’Przykładowy tekst’,’textdomain’);
_e(’Przykładowy tekst 2′,’textdomain’);[/kod]Gdzie textdomain, to identyfikator dla naszych stringów. Często nazwą jest nazwa wtyczki lub szablonu.
Najlepiej w trakcie tworzenia szablonu / wtyczki od razu dodać te funkcje zamiast zwykłego tekstu. Dzięki temu nie będziemy musieli później przerabiać.
Edycja styli bez których może nie działać obsługa języków
W domyślnych stylach szablonu lub wtyczki czyli style.css, na początku trzeba zdefiniować nazwę textdomain oraz położenie plików z tłumaczeniami.[kod]/*
Theme Name: Przykładowy szablon
Description: Przykładowy plik
Version: 1.0.0
Author: KarolDrag
Author URI: http://karol-drag.eu
Domain Path: /languages
Text Domain: textdomain
*/[/kod]
Dodanie funkcji bez których może nie działać obsługa języków
Dla wtyczki[kod]add_action( 'plugins_loaded’, 'myplugin_load_textdomain’ );
function myplugin_load_textdomain() {
load_plugin_textdomain( 'textdomain’, false, basename( dirname( __FILE__ ) ) . '/languages’ );
}
[/kod]Dla szablonu[kod]add_action( 'after_setup_theme’, 'my_theme_setup’ );
function my_theme_setup(){
load_theme_textdomain( 'textdomain’, get_template_directory() . '/languages’ );
}
[/kod]
Wygenerowanie plików .mo, .po
Kiedy już mamy skonfigurowane wszystkie wymagane elementy pora na wygenerowanie plików .mo i .po. Użyjemy do tego znanej wtyczki Loco Translate, możliwe, że gdzieś już o niej słyszałeś.
Po zainstalowaniu wtyczki, przechodzimy do niej. Powinna znajdować się na samym dole w lewym menu. W głównym oknie wtyczki znajdziemy listę wszystkich aktywnych wtyczek oraz szablonów.
Wybieramy nasz szablon lub wtyczkę i wchodzimy w zakładkę Advanced by upewnić się, że wszystkie pola są dobrze wypełnione.
Teraz przechodzimy do tworzenia plików .po, .mo dla języka np. Polskiego. Aby to zrobić wybieramy opcję New language.
Kiedy klikniemy Start translation od razu przekieruje nas do najważniejszego okna, okna tłumaczeń.
Wtyczki do obsługi języków
No dobrze, gdy już wiesz, że obsługa języków dla Twojego szablonu lub wtyczki działa, to wypadałoby przetestować ją w kilku językach. Aby to zrobić potrzebujemy wtyczki do języków.
Przykładowymi wtyczkami są Polylang (darmowa) i WPML (płatna). Dzisiaj nie będę opisywać jak je skonfigurować. Zrobimy to następnym razem, a ja zachęcam do udzielania się w dyskusjach (komentarze i portale społecznościowe).
Drag




