WordPress návody

Jak na vícejazyčný WordPress s Polylang

Autor příspěvku Tomáš Cirkl

Chcete mít svou WordPress stránku ve více jazycích? V tomto návodu si ukážeme, jak pomocí pluginu Polylang, který je zdarma, vytvořit plnohodnotný web v tolika jazycích, kolik jen potřebujete.

Polylang umožňuje tvorbu vícejazyčné WordPress stránky. Pomocí něj můžete psát stránky, příspěvky a vytvářet rubriky a štítky pro každý jazyk. Překlad obsahu (příspěvků, stránek..) je vždy volitelný. To znamená, že když vytvoříte příspěvek a na webu budete mít 3 jazykové varianty, tak je jen na vás, zda jej přeložíte a publikujete ve všech jazycích nebo jej necháte jen v jednom.

Instalace a nastavení

Polylang se nachází v oficiálním repozitáři a plugin lze nainstalovat přímo z WordPress administrace.

Polylang plugin

Po jeho aktivaci se ve WordPress administraci zobrazí nová položka menu Polylang, která má položky:

  • Polylang – jazyky
  • Překlady textů (zobrazí se až po definování jazyků)
  • Nastavení
  • Lingotek (propojení se službou, v tomto návodu neřeším)

Polylang: vytváření jazyků webu

Přidat nový jazyk

Nejprve musíte nadefinovat, v jakých jazykových mutacích budete chtít WordPress používat. To uděláte tak, že půjdete do Polylang -> Polylang – jazyky a v sekci Přidejte nový jazyk vyberete z rozbalovací nabídky Zvolte jazyk primární jazyk stránky. Po zvolení jazyku se předvyplní ostatní položky formuláře. Pokud chcete, můžete je upravit. Nakonec klikněte na tlačítko Přidejte nový jazyk.

DŮLEŽITÉ: Po vytvoření prvního jazyka se vás Polylang zeptá, zda již vytvořený obsah má přiřadit k tomuto výchozímu jazyku. Jedná se o hlášku There are posts, pages, categories or tags without language. You can set them all to the default language. v horní části obrazovky. Klikněte na odkaz v ní a vše se nastaví.

Nastavení výchozího jazyka

Vytvořte i ostatní jazyky. Já pro ukázku budu web dělat v CZ, EN a RU. Až budete hotovi, napravo uvidíte seznam vytvořených jazyků. Pomocí hvězdičky určujete výchozí jazyk.

Definované jazyky

Polylang: Překlady textů

Překlady textů

V této sekci můžete určit překlady/nastavení pro různé WordPress nastavení, které se nedá ovlivnit přes obsah nebo po/mo překlady. Obsah této stránky závisí na použité šabloně a pluginech. Vždy tu však najdete nastavení formátu data a času, názvu webu a popisu webu.

Polylang: Nastavení

Nastavení Polylang

Sekce nastavení umožňuje nastavit základní prvky a funkce Polylang pluginu. Nastavení je přeloženo do češtiny, tak zdůrazním jen to důležité.

  • Modifikování URL – zde můžete nastavit například jak bude vypadat URL, zda bude kód jazyka použit jako subdoména nebo za jménem domény. Také zde určíte, zda se má kód jazyka používat u výchozího jazyka.

Modifikování URL

  • Detekovat jazyk prohlížeče – automatické přesměrování na daný jazyk podle jazyku prohlížeče. Doporučuji vypnout, jsou s tím akorát problémy.
  • Média – pokud necháte zapnuté, musíte pro každou jazykovou variantu vytvářet/nahrávat vlastní obrázky. Když vypnete, budete sdílet všechny obrázky do všech jazykových variant.
  • Custom post types and Taxonomies – aktivuje nebo deaktivuje podporu překladu pro vlastní typy příspěvků a jejich taxonomie. Zaškrtnutím povolíte.
  • Synchronizace – když vytváříte překlad příspěvků a stránek, tak se můžete chtít vyhnout opakovaným akcím, jako je například nastavování rubrik a štítků, náhledového obrázku, nadřazené stránky atd. Když povolíte synchronizaci, tak se toto nastavení přenese mezi jazyky. Zaškrtnutím povolíte.
  • WPML Compatibility – některé šablony a pluginy jsou psány specificky pro podporu WPML. Polylang tohoto nastavení také umí využít. Doporučuji nechat aktivované.
  • Share slugs – když se vám stane, že nějaký obsah má stejný slug jako jeho překlad, tak pomocí této funkce to můžete povolit. Pouze PRO verze.
  • Translate slugs – umožňuje překlad slug pro rubriky a vlastní typy příspěvků atd. Pouze PRO verze.
  • Tools – obsahuje jen možnost odstranit všechny data při mazání pluginu.

Tvorba obsahu ve více jazycích

Když máte nastavení hotové, můžete se pustit do tvorby obsahu. Celý proces je velmi jednoduchý a přehledný.

Překlad příspěvků a stránek

Při vstupu do přehledu příspěvků a stránek zde máte nový sloupeček s vlaječkami v záhlaví.

Překlad příspěvky

Jako příklad udělám překlad stránky O nás. Když se podíváte na sloupeček s vlajkami, tak vidíte, že pod českou vlajkou je symbol “zaškrtnutí”. U zbývajících vlajek je symbol “plus”. Kliknutím na plus vytvoříte přidruženou stránku v daném jazyku jako překlad.

Alternativně můžete vytvořit přidružené stránky s překladem i v detailu příspěvku pomocí boxu Polylang – Jazyky.

Překlad v příspěvku

Po vytvoření stránky se symbol plus změní na symbol “tužky”. V detailu příspěvku uvidíte i název odpovídající stránky.

Přeložené stránky

Překlad box s přeloženými stránkami

Při tvorbě samotné stránky musíte celý obsah vytvořit znovu nebo si jej zkopírovat. Pokud používáte šablonu s builderem, jako je například Divi, tak můžete využít pro zkopírování obsahu knihovnu a jen přepisovat texty. Překlad rubrik a štítků je je založen na úplně stejném principu.

Překlad widgetů

Widgety jsou specifickou funkcí ve WordPress, ale i ty jdou pomocí Polylang přeložit. Pokud si rozbalíte widget, uvidíte u něj nastavení jazyka.

Widget s Polylang

Můžete u něj nastavit, že daný widget bude zobrazen na všech jazycích nebo na specifickém jazyku. Pro widget Nejnovější příspěvky vytvořený pro každý jazyk zvlášť to pak bude vypadat jako na obrázku níže.

Specifické widgety pro daný jazyk

Vlastní menu pro každý jazyk

Je jasné, že všechny jazyky nemůžou mít stejné menu a je potřeba jim vytvořit specifické menu s vlastními stránkami. To uděláte tak, že si pro každé menu vytvoříte vlastní WordPress menu a to přiřadíte k dané jazykové variantě.

Menu

Takže pokud bude šablona nabízet 3 místa pro menu a vy budete chtít mít každé využité a jiné pro daný jazyk, tak budete muset vytvořit devět menu.

Jak přidat jazykový přepínač do menu?

Polylang obsahuje specifickou položku menu, která se jmenuje Přepínač jazyků a kterou když vložíte do menu, tak do něj vytvoří přepínač mezi jazykovými variantami.

Přepínač jazyků

Přepínač jazyků funguje jako jakákoliv jiná položka menu, jen má vlastní nastavení.

Nastavení přepínače jazyků

Zaškrtnutím si zde můžete vybrat:

  • Zobrazí jako rozbalovací seznam
  • Zobrazí názvy jazyků
  • Zobrazí vlajky
  • Vynutí odkaz na úvodní stránku – ať se budete nacházet kdekoliv, tak budete přesměrování na hlavní stranu daného překladu.
  • Skryje aktuální jazyk
  • Hides languages with no translation – v nabídce skryje jazyk, který nemá překlad.

Pár ukázek, jak může přepínač vypadat:

Zobrazené jméno jazyka jako dropdown

Jméno a vlajka jako dropdown

Pouze vlajky

Překlad obrázků

I u obrázků můžete nastavit překlad jeho informací. Jedná se o jeho název, titulek, alternativní text a popis. Překlad obrázku uděláte tak, že půjdete do Médií a kliknete na vybraný obrázek v jeho nabídce pak klikněte na odkaz Upravit další informace.

Upravit další informace

Dostanete se na stránku, kde již vidíte box Polylang – Jazyky, přes který můžete vytvořit jazykové alternativy. Postup je stejný jako u tvorby jakéhokoliv jiného obsahu s Polylang.

Filtrování obsahu administrace podle jazyka

Na konec už mám jen drobný tip, jak v případě potřeby zjednodušit zobrazené informace v administraci.

V horní WordPress liště se po instalaci Polylangu objeví nová položka s výchozím nastavením Zobrazit všechny jazyky. Když na ni najedete myší, tak se zobrazí nabídka nastavených jazyků. Jestliže nějaký zvolíte, tak se zobrazený obsah v administraci WordPress bude ukazovat jen pro daný jazyk.

Přepínání jazyků v administraci

Nyní máte všechny informace jak vybudovat vícejazyčnou stránku na WordPress.

O autorovi

Tomáš Cirkl

Baví mě Internet a zvláště pak redakční systém WordPress. Jsem pravidelným účastníkem a přednášejícím na WordCamp Praha a WordPress konferencích.

28 komentářů

  • Súhlasím, naozaj skvelý plugin.
    Čo ma s ním trochu mrzí je, že občas nefunguje sekcia “Strings” ktorú majú v nastaveniach. Stringy, ktoré sú tam uvedené na niektorých weboch neprekladá. (site name, slogan, atd) očakávala by som, že ak už majú takúto sekciu, tak bude fungovať bez toho aby sa ešte manuálne registrovali a prekladali stringy.
    Možno ešte niekoho by zaujímalo, že ak niekto plánuje web, kde potrebuje niektoré pages viacjazyčné, teda aby sa daná stránka zobrazovala vo všetkých jazykoch priamo bez prekladu, tak free polylang takéto nastavenie neumožńuje, naozaj musí byť všetko 1 : 1.

  • Zdravim Vas,

    velmi by ma zaujimalo ako spolupracuje tento plugin so SEO ci sa da zvlast nastavit SEO pre kazdy jazyk alebo nie.

    Vdaka

  • pripadne ci je lepsie instalovat wordpress na novu URL napr…/sk/ ak je moj povodny jazyk EN
    ak by som to chcel dobre vyriesit so SEO atd

    • Zde bych řekl, že se to nedá říci obecně a vychází to obvykle z marketingové strategie projektu.

  • Dobrý den, díky za článek a návod. Poradíte mi prosím, jak nastavit home page pro každý jazyk? Mám pro každý jazyk svoje menu, u primárního jazyka – čeština – mám nastavenou home page (www.mojedomena.cz/onas. Ale nevím, jak nastavit homepage pro daný jazyk – angličtina, polština. Po kliknutí na přepínač jazyků v menu se načte url ve tvaru http://www.mojedomena.cz/en nebo /pl, ale tam není obsah. Jde nějak vyřešit, aby po kliknutí na přepínač jazyků směřovalo na konkrétní stránku? Nebo obráceně – jak dostat konkrétní stránku jako homepage pro daný jazyk?

    Na webu je šablona DIvi
    Děkuji za pomoc a navedení…

    • Zdravím,

      pro každou danou stránku musíte mít nastavenou alternativu v daném jazyce. WP pak už pozná, že je to hlavní strana a bude ji tak používat. Případně máte ty hlavní stránky v Polylangu správně nastavené?

  • Dobrý den, mám začínající blog. Šablona Nisarg. Po aktivaci a nastavení Polylang mi zmizely všechny posty, které tam doposud byly. Také bych se chtěla zeptat, zdali, když změním šablonu, zůstanou nastavení Polylangu stejná?

    Děkuji za pomoc
    Lucie

    • Zdravím,

      jak zmizeli? V administraci by měli být pořád. Nemáte vybraný jazyk pro filtrování obsahu administrace? Je to v horní lište. Co se týče změny šablony, tak to na ní není vázané. Když změníte šablonu, tak nastavení jazyků zůstane.

  • Dobrý den, polylang jsem použila, vše funguje, jen nemohu rozchodit funkci ” Search”, funguje vyhledávání jen pro angličtinu, v němčině nic nenajde. Jedná se o stránky: http://www.praguetour.net/. Budu moc ráda za radu, co mám špatně nastavené.

    • Už vyřešeno. 🙂
      Třeba to někomu pomůže v budoucnosti. Byl problém s nastavením modifikování URL- home page přímo v nastavení Polylangu. Zaškrtla jsem špatnou volbu. Chce to zaškrtnout volbu: “Úvodní stránka bude mít v URL jen kód jazyka a ne název stránky či její ID”, pak to jede na výbornou. 🙂

  • Dobrý den,

    Mám 2 jazykové verze webu. Nastavený výchozí jazyk, kterým je čeština, druhým pak je angličtina.
    Při výběru jazyka se daný vybraný jazyk zvýrazní (zvětší). Problém pak je v responsibilitě, člověk si najede na stránky na mobilu a ono to ukáže přes 3/4 strýnky rozmazanou vlajku právě vybraného jazyka. Druhý jazyk pak nechá ve správné velikosti jako ostatních položek menu.

    Nevíte prosím co s tím ?

      • CSS to není vzal jsem, zkopíroval jsem komplet ten plugin z druhého webu, kde to jede tak jak má a problém se nevyřešil. Nemůže to být verzí wordpressu? Na webu, kde je wordpress aktualizovaný, se polylang zobrazuje normálně – sice se nezvětší vlajka nastaveného jazyka na počítači, ale ani na mobilu a o to mi jde. Na starší verzi se zas zobrazí o trochu zvětšená vlajka na počítači, ale na mobilu to dělá úplnou paseku.

  • Zdravím, a díky za článek, rady i komentáře – Tomáši, jste super!
    Potřebovala bych ještě přidat čínštinu, ale v tomto pluginu ji nevidím. Neměl byste doporučení?
    Díky.

      • Díky moc, hledala jsem pod zkratkou RC, ne CN 😉
        Ale mám problém – po aktivaci tohoto pluginu se mi několikrát na zveřejněné stránce objelila chyba404, když jsem ho deaktivovala, zas to šlo. Asi to s ním nesouvisí, budu mít problém jinde, jenže nevím kde…
        Koupila jsem si šablonu a teď se ji pokouším nastavit (jsem pololaik). Minulý týden jsem zveřejnila stránku Coming soon, ale za den několikrát spadne do Error404, vždycky to pak pracně opravuji. A dnes to dokonce hodilo hlášku 502 Bad Gateway nginx/1.9.12, nedostanu se ani do admina. Jo pracuji na tom naMacBooku.
        Nevěděl byste o někom, kdo mi koukne, kde je zrada? Nejlépe v Praze 🙂
        Díky za pochopení.

Zanechat komentář

Získejte více informací o WordPress!

Připojte se do našeho emailového seznamu a nenechte si ujít informace, novinky a návody ze světa WordPressu.

Úspěšně jste se zapsali do našeho newsletteru. Děkujeme!

Tomáš Cirkl

Tomáš Cirkl

WordPress specialista

Blog WPlama.cz píši už více než 3 roky. O WordPress přednáším a pořádám školení. Pro své klienty vytvářím a spravuji webové stránky.