wplangs.ru wordpress WP Langs

Добавление нового языка в админпанель WordPress: пошаговое руководство

В этой статье разберём, как добавить поддержку нового языка в административной панели WordPress. Это важный шаг для тех, кто хочет сделать админку удобной для пользователей из разных стран или адаптировать сайт под локальный язык, которого нет в стандартном списке языков WordPress.

Почему может потребоваться добавить новый язык в WordPress

По умолчанию WordPress поддерживает множество языков, но иногда возникает ситуация, когда нужного языка нет в списке, или требуется добавить специфичный диалект или кастомизированный перевод. Например, для региональных вариантов русского языка, редких языков или корпоративных локализаций.

Также добавление собственного языка полезно, если вы хотите использовать специфическую терминологию, которая отличается от официального перевода.

Как WordPress работает с языками в админпанели

Языки в WordPress реализуются через .mo и .po файлы переводов, которые хранятся в wp-content/languages. Для каждого языка есть код, например, ru_RU — русский, en_US — английский США, и т.д.

Чтобы добавить язык, нужно:

  • Создать файлы перевода .po и .mo для нужного языка.
  • Поместить их в правильную папку на сервере.
  • Зарегистрировать язык в WordPress, чтобы он отображался в списке выбора.

Добавляем новый язык в WordPress: пошагово

1. Создание файлов перевода

Для создания файлов перевода используйте редактор Poedit или аналогичные инструменты.

Откройте исходный файл wordpress.pot (его можно скачать с официального сайта или из папки wp-content/languages) и создайте новый перевод, например, для языка ru_UA (русский Украина). Переведите необходимые строки и сохраните файлы как ru_UA.po и ru_UA.mo.

2. Загрузка файлов на сервер

Поместите файлы ru_UA.po и ru_UA.mo в папку wp-content/languages. Если её нет, создайте вручную.

3. Регистрация языка в WordPress

Чтобы новый язык появился в списке выбора в настройках, добавим его программно. Для этого используем хук locale и фильтр, который расширит список языков.

add_filter('locale', 'wplangs_add_custom_locale');
function wplangs_add_custom_locale($locale) {
    if (is_admin() && isset($_GET['lang']) && $_GET['lang'] === 'ru_UA') {
        return 'ru_UA';
    }
    return $locale;
}

Этот код переключает язык админки на ru_UA, если в URL есть параметр ?lang=ru_UA. Можно улучшить логику, чтобы язык выбирался из профиля пользователя.

4. Добавление языка в список выбора в настройках пользователя

Для удобства пользователя расширим список языков. Используем фильтр available_languages:

add_filter('available_languages', 'wplangs_add_custom_language');
function wplangs_add_custom_language($languages) {
    $languages[] = 'ru_UA';
    return $languages;
}

Теперь язык ru_UA будет отображаться в списке выбора в профиле пользователя.

Пример плагина для добавления нового языка в админпанель

Создадим простой плагин, который добавляет поддержку пользовательского языка ru_UA:

<?php
/**
 * Plugin Name: WP Langs Custom Admin Language
 * Description: Добавляет новый язык ru_UA в админпанель WordPress
 * Version: 1.0
 * Author: wplangs.ru
 */

add_filter('available_languages', 'wplangs_add_custom_language');
function wplangs_add_custom_language($languages) {
    if (!in_array('ru_UA', $languages)) {
        $languages[] = 'ru_UA';
    }
    return $languages;
}

add_filter('locale', 'wplangs_set_custom_locale');
function wplangs_set_custom_locale($locale) {
    if (is_admin()) {
        $user = wp_get_current_user();
        if (in_array('ru_UA', $user->allcaps)) {
            return 'ru_UA';
        }
        // Или, например, переключение по GET параметру
        if (isset($_GET['lang']) && $_GET['lang'] === 'ru_UA') {
            return 'ru_UA';
        }
    }
    return $locale;
}

Этот плагин расширяет список доступных языков и переключает язык админпанели при определённых условиях.

Рекомендации по плагинам для управления языками в WordPress

Если нужен более простой способ управления языками, советуем обратить внимание на плагины, которые поддерживают расширенную локализацию:

  • Clearfy Pro – плагин с расширенными функциями оптимизации и локализации.
  • Плагины для многоязычности, такие как Polylang или WPML, тоже позволяют работать с языками в админпанели.

Как проверить, что ваш новый язык работает корректно

После выполнения всех шагов:

  1. Перейдите в профиль пользователя и выберите новый язык из списка (например, ru_UA), если плагин добавил его туда.
  2. Если используете переключение через GET-параметр, добавьте ?lang=ru_UA к URL админки.
  3. Очистите кэш браузера и кэш сайта, если он используется.
  4. Проверьте, что в админпанели отображаются переводы вашего языка.

Если перевод не отображается, убедитесь, что файлы .mo и .po корректны и лежат в папке wp-content/languages.

Подытожим

Добавление нового языка в админпанель WordPress – задача вполне выполнимая с помощью создания собственных файлов переводов и небольших изменений в коде. Такой подход позволяет гибко адаптировать интерфейс под нужды локальных пользователей или специфических проектов.

×

AI-плагин от WPShop.ru

анализирует конкурентов

пишет статьи

готовит SEO

генерирует изображения

и еще кое-что...
WPGPT
Плагин, который наполняет ваш сайт WordPress
Узнать больше