Vytvořil jsem nový web pro mého grafika!

WPML: Jak vytvořit vlastní design language switcheru

0 komentářů

Zrovna tvořím webové stránky pro jednu světovou organizaci, kde bylo potřeba udělat multijazyčný web. Požadavky byly takové, že na desktopu se měl language switcher pro přepínání jazyků zobrazovat jinak, než v mobilním menu. No a jelikož mám pocit, že v defaultním nastavení WPML lze zvolit jen jeden vzhled, tak nezbývalo nic jiného, než si to vytvořit pomocí vlastního kódu.

Ke kódu níže ještě upozorním, že pakliže stránka nemá vytvořený překlad, tak se po kliknutí na daný jazyk návštěvník dostane na hlavní stránku daného jazyka. Je tam trochu změna od defaultního nastavení, když využijete (například v Bricks) prvek Language switcher, kde pokud stránka překlad nemá, tak se ani nezobrazí switcher pro možnost přepunutí do daného jazyka.

<?php
// Získání dostupných jazyků
$languages = apply_filters('wpml_active_languages', null, ['skip_missing' => 0]);

if (!empty($languages)) : ?>
    <div class="ap-language-switcher">
        <?php foreach ($languages as $lang) : ?>
            <a href="<?php echo esc_url($lang['url']); ?>" class="language-flag">
                <img 
                    src="<?php echo esc_url($lang['country_flag_url']); ?>" 
                    alt="<?php echo esc_attr($lang['native_name']); ?>" 
                    width="32" height="32"
                />
            </a>
        <?php endforeach; ?>
    </div>
<?php endif; 
?>
Máte dotazy či potřebujete pomoc?
V případě dotazů mi napište níže komentář, rád vám odpovím a navedu vás. Komentář mi můžete napsat i v případě, že vám článek pomohl nebo se vám líbil, určitě to potěší. 🙂

Podobné články

Zanechte mi komentář