WPML i CPT – czyli tłumaczenia custom post types w wordpress

Aby WPML „ogarniał” Custom Post Types (CPT) i dodawał im tłumaczenia w językach jakich jest strona, musisz je najpierw zarejestrować w WPML.

Tłumaczenie postów CPT

1. konfiguracja CPT

Zacznij od sprawdzenia czy CPT ma poprawną konfigurację, podaną podczas rejestracji CPT w functions.php:

'public' => true,
'show_in_rest' => true

2. ustawienie tłumaczenia CPT w WPML

Wejdź w: WPML > Settings (Ustawienia) > Post Types Translation

Znajdź swój Custom Post Type na liście (np. portfolio, projekty, itp.).

Ustaw jedną z opcji:

  • Translatable (tłumaczalne) – jeśli chcesz mieć osobne wersje językowe wpisów – o tą opcję nam chodzi,
  • Translatable – use translation if available or fallback to default language – jeśli chcesz fallback,
  • Not translatable – użyj tego jeśli nie chcesz mieć wersji językowych.

Następnie kliknij Save, by zapisać ustawienia.

3. dodanie tłumaczeń

Po ustawieniu powyższego, wejdź w swój CPT (np. „Projekty”)
Przy wpisie zobaczysz kolumnę języków WPML:

  • 🇵🇱 PL
  • 🇬🇧 EN
  • 🇩🇪 DE (lub inny język, w który jest zdefiniowany)

Klikasz ikonę „+” przy języku → tworzysz tłumaczenie. Dzięki temu każdy wpis tego CPT może mieć wersję w każdym ze zdefiniowanych języków strony.

Tłumaczenie slug CPT

1. konfiguracja CPT

Zacznij od sprawdzenia czy CPT ma poprawną konfigurację, podaną podczas rejestracji CPT w functions.php:

'rewrite' => [
  'slug' => 'projekty',
  'with_front' => false
],

Pamiętaj by slug był podany w języku, który jest ustawiony w WPML jako główny.

2. ustawienie tłumaczenia CPT w WPML

Wejdź w: WPML > Settings (Ustawienia) > Slug translations

I tam włącz: Translate custom post and taxonomy base slugs (via WPML String Translation).

3. dodanie tłumaczeń

Po ustawieniu powyższego, wejdź w WPML > Settings (Ustawienia) > Post Types Translation

Znajdź swój Custom Post Type na liście (np. portfolio, projekty, itp.) i jeśli wszystko zostało dobrze skonfigurowane powinien być link „Set different slugs in different languages for Portfolio.” z nazwą Twojego CPT.

Po kliknięciu go rozwinie się lista języków i slagów do wpisania. Po ich wprowadzeniu kliknij Save, by zapisać ustawienia.

👉 WAŻNE – Po zmianie slugów, idź do:
Ustawienia > Permalinks > Zapisz (bez zmian, to flush rewrite rules)

Tłumaczenie slug kategorii (taxonomy)

1. konfiguracja taxonomy

Zacznij od sprawdzenia czy taxonomy ma poprawną konfigurację, podaną podczas rejestracji CPT w functions.php:

'rewrite' => [
  'slug' => 'kategoria-projekty',
  'with_front' => false
],

Pamiętaj by slug był podany w języku, który jest ustawiony w WPML jako główny.

Hope this helps and happy coding :)

Zobacz jeszcze

podstawy animacji z wykorzystaniem GSAP

GSAP (GreenSock Animation Platform) to bardzo popularna biblioteka JavaScript do tworzenia animacji — znacznie wydajniejsza i wygodniejsza niż czysty CSS czy requestAnimationFrame. GSAP działa...

NVM - Node Version Manager

NVM - narzędzie działające w wierszu poleceń (skrypt powłoki), które umożliwia instalację i zarządzanie wieloma różnymi wersjami środowiska Node.js na jednym komputerze. Główne...