Polylang – Přepínání jazykové mutace v šabloně

Pavel Kovář
04.09.2020 18:55

Pokud používáte pro jazykové mutace ve WordPress plugin Polylang a potřebujete v rámci šablony na míru napasovat jejich přepínání, může se hodit následující řešení.

Reklama

Výchozí funkce Polylangu

Polylang nabízí funkci pll_the_languages(), pomocí které lze přepínání jazykové mutace. Bohužel není moc možností, jak ovlivnit výsledné HTML a pokud potřebujete přepínání jazykových mutací napasovat přímo do Vaší, již hotové šablony, je to problém a je potřeba sáhnout po vlastním řešení.

Získání aktuálního jazyka v Polylang

Pro získání aktivní jazykové mutace slouží v Polylangu funkce pll_current_language(). Ta nám však vrací pouze kód jazyka, např. cs pro češtinu. Někdy se může hodit zobrazit např. celý název, v určitých případech můžeme potřebovat i URL mutace.

V následujícím snippetu využijeme funkci pll_the_languages(), o které už byla řeč, její výstup si však „zpracujeme“ po svém.

Díky těmto 3 řádkům kódu získáme v proměnné $languages pole s potřebnými daty pro všechny jazykové mutace a do $current uložíme data pro aktuální mutaci.

Reklama

Pro každou mutaci máme tak získána data, která lze libovolně využít:

Bootstrap dropdown – výběr jazyka

V ukázce kódu níže je to celé zasazeno do HTML struktury Bootstrap dropdownu, pokud tedy Vaše šablona běží na Bootstrapu, měla by se Vám zobrazit rozbalovací nabídka pro přepnutí jazykové mutace.

Reklama
Reklama
Zavřít reklamu