@klekovkinandrey

Как в polylang вывести код и флаги?

$translations = pll_the_languages(array(
        "raw" => 1,
));

<div class="dropdown">
    <button class="header-lang__btn"
            type="button" id="dropdownLangButton"
            data-toggle="dropdown" aria-haspopup="true"  aria-expanded="false">
        <span class="header-lang__text"><?= $translations[pll_current_language()]['name'] ?></span>
    </button>
    <div class="dropdown-menu dropdown-menu-right" aria-labelledby="dropdownLangButton">
        <?php foreach ($translations as $item) : ?>
        <a class="dropdown-item <?= ($item['current_lang']) ? 'disabled' : '' ?>" href="<?= $item['url'] ?>">
            <?= $item['name'] ?>
        </a>
        <?php endforeach; ?>
    </div>
</div>


1. Как вывести сюда не название языка а код
<span class="header-lang__text"><?= $translations[pll_current_language()]['name'] ?></span>
?
2. и как в dropdown возле названия языка добавить флаг
  • Вопрос задан
  • 473 просмотра
Решения вопроса 1
eugenesidash
@eugenesidash
WEB Developer
Здравствуйте!

Вот документация - https://polylang.pro/doc/function-reference/#:~:te...

В частности, этот момент:

Returns the current language
Usage:
pll_current_language( $value );
‘$value’ => (optional) either ‘name’ or ‘locale’ or ‘slug’, defaults to ‘slug’
returns either the full name, or the WordPress locale (just as the WordPress core function ‘get_locale’ or the slug ( 2-letters code) of the current language.

Попробуйте заменить у себя в коде
[pll_current_language()]['name']
на
[pll_current_language()]['locale'] или [pll_current_language()]['slug']

Если я правильно понял ваш вопрос.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы