Сканировать

Русификация WordPress сайта по 168-ФЗ: пошаговое руководство

WordPress остаётся самой популярной платформой для создания сайтов в России и во всём мире. По различным оценкам, более 40% всех веб-ресурсов работают именно на этом движке. С вступлением в силу Федерального закона 168-ФЗ о государственном языке Российской Федерации владельцы сайтов на WordPress столкнулись с необходимостью полной русификации своих ресурсов. В данном руководстве мы детально разберём каждый этап приведения WordPress-сайта в соответствие с требованиями законодательства.

Что требует 168-ФЗ от владельцев сайтов на WordPress

Федеральный закон 168-ФЗ устанавливает обязательное использование русского языка на сайтах, ориентированных на российскую аудиторию. Для владельцев сайтов на WordPress это означает необходимость проверки и исправления множества элементов: от основного контента страниц до технических надписей в шаблонах тем. Подробнее о требованиях закона читайте в нашей базе знаний о 168-ФЗ.

Особенность WordPress заключается в том, что платформа изначально разрабатывалась на английском языке. Несмотря на существование официальной русской локализации, множество элементов интерфейса, плагинов и тем могут содержать непереведённые англоязычные строки. Именно эти строки становятся потенциальными нарушениями 168-ФЗ.

Основные источники англоязычных элементов в WordPress

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

Ядро WordPress

Само ядро WordPress при правильной установке с русской локализацией переведено достаточно хорошо. Однако некоторые строки могут оставаться непереведёнными после обновлений. Особенно это касается новых функций, добавленных в последних версиях платформы. Рекомендуется всегда проверять, установлена ли последняя версия языкового пакета.

Темы оформления

Темы — один из главных источников англоязычных надписей. Даже популярные темы с официальным переводом могут содержать непереведённые элементы в таких местах, как:

Плагины

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

Пользовательский контент

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

Пошаговая русификация WordPress

Шаг 1. Проверка языковых настроек

Первым делом убедитесь, что в настройках WordPress установлен русский язык. Перейдите в панель управления: Настройки → Общие → Язык сайта. Выберите «Русский» из выпадающего списка. Это базовая настройка, которая определяет язык интерфейса администратора и подгружает файлы переводов для ядра.

Важно: смена языка в настройках WordPress затрагивает только ядро и те плагины/темы, которые имеют соответствующие файлы перевода. Большинство сторонних расширений потребуют отдельной русификации.

Шаг 2. Обновление переводов

WordPress позволяет обновлять переводы отдельно от основных обновлений. Перейдите в раздел Консоль → Обновления и проверьте наличие обновлений переводов. Зачастую свежие переводы добавляют русификацию для ранее непереведённых строк.

// Программное обновление переводов через WP-CLI
wp language core update
wp language plugin update --all
wp language theme update --all

Шаг 3. Аудит текущей темы

Проведите полный аудит вашей темы на предмет англоязычных строк. Откройте сайт в режиме инкогнито и внимательно пройдитесь по каждой странице. Обратите внимание на следующие элементы:

Элемент темы Типичная английская строка Русский эквивалент
Кнопка «Читать далее» Read More Читать далее
Поле поиска Search... Поиск...
Комментарии Leave a Reply Оставить комментарий
Навигация Previous / Next Предыдущая / Следующая
Страница 404 Page Not Found Страница не найдена
Результаты поиска No Results Found Ничего не найдено
Форма обратной связи Submit / Send Отправить
Архив записей Archives Архив

Шаг 4. Создание дочерней темы для локализации

Если ваша тема не полностью переведена, создайте дочернюю тему и добавьте собственные переводы. Это позволит сохранить изменения при обновлении родительской темы.

/* style.css дочерней темы */
/*
Theme Name: МояТема Child
Template: parent-theme-folder
Text Domain: mytheme-child
*/

/* functions.php дочерней темы */
<?php
function mytheme_child_setup() {
    load_child_theme_textdomain(
        'parent-theme-domain',
        get_stylesheet_directory() . '/languages'
    );
}
add_action('after_setup_theme', 'mytheme_child_setup');
?>

Шаг 5. Использование плагинов для перевода строк

Для перевода жёстко закодированных строк в темах и плагинах рекомендуем использовать специализированные плагины. Наиболее эффективные решения:

Шаг 6. Перевод с помощью Loco Translate

Установите и активируйте плагин Loco Translate. После активации перейдите в раздел Loco Translate → Темы (или Плагины). Выберите нужную тему или плагин, нажмите «Новый язык» и выберите русский. Система покажет все строки, доступные для перевода.

// Пример использования функции перевода в теме
// Было (английский):
echo 'Read More';

// Стало (с поддержкой перевода):
echo __('Читать далее', 'your-theme-textdomain');

// Для строк с HTML-разметкой:
echo wp_kses(
    __('<strong>Внимание:</strong> поле обязательно для заполнения', 'your-theme-textdomain'),
    array('strong' => array())
);

Шаг 7. Русификация популярных плагинов

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

WooCommerce

WooCommerce — самый популярный плагин для интернет-магазинов. Имеет официальный русский перевод, но некоторые строки могут оставаться на английском, особенно в шаблонах электронных писем и на странице оформления заказа. Проверьте разделы: страницу корзины, оформление заказа, личный кабинет покупателя и шаблоны уведомлений.

// Фильтр для замены строк WooCommerce
add_filter('gettext', 'custom_woo_translate', 20, 3);
function custom_woo_translate($translated, $text, $domain) {
    if ($domain === 'woocommerce') {
        switch ($text) {
            case 'Add to cart':
                $translated = 'В корзину';
                break;
            case 'Proceed to checkout':
                $translated = 'Оформить заказ';
                break;
            case 'Place order':
                $translated = 'Разместить заказ';
                break;
            case 'Return to shop':
                $translated = 'Вернуться в магазин';
                break;
        }
    }
    return $translated;
}

Contact Form 7

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

Elementor и другие конструкторы страниц

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

Автоматическая проверка русификации

После проведения ручной русификации рекомендуется запустить автоматическую проверку. Сервис КириллоСкан проанализирует ваш сайт и выявит все оставшиеся англоязычные элементы, включая скрытые строки в JavaScript, атрибуты alt и title изображений, placeholder-ы в формах и метаданные страниц.

Работа с файлами перевода вручную

Если вы предпочитаете работать с файлами перевода напрямую, используйте утилиту WP-CLI или программу Poedit. Файлы переводов WordPress имеют формат PO (текстовый) и MO (скомпилированный бинарный). Все файлы переводов располагаются в директории wp-content/languages/.

# Структура файлов переводов WordPress
wp-content/
  languages/
    ru_RU.po          # Перевод ядра WordPress
    ru_RU.mo
    plugins/
      woocommerce-ru_RU.po   # Перевод плагина
      woocommerce-ru_RU.mo
    themes/
      mytheme-ru_RU.po       # Перевод темы
      mytheme-ru_RU.mo

Создание файла перевода с помощью Poedit

Откройте Poedit и создайте новый каталог на основе POT-файла вашей темы или плагина. POT-файл — это шаблон перевода, содержащий все строки для перевода. Выберите русский язык, переведите все строки и сохраните файл с именем, соответствующим текстовому домену и локали (например, mytheme-ru_RU.po). Poedit автоматически создаст MO-файл.

Русификация атрибутов и метаданных

Закон 168-ФЗ распространяется не только на видимый текст, но и на метаданные. Убедитесь, что следующие элементы переведены на русский:

  1. Атрибуты alt у изображений — описания изображений должны быть на русском языке. Проверьте медиабиблиотеку WordPress и обновите все alt-тексты.
  2. Title страниц — заголовки страниц в тегах <title> формируются темой или SEO-плагином. Убедитесь, что шаблоны заголовков не содержат англоязычных разделителей и суффиксов.
  3. Meta description — описания страниц должны быть на русском. Если используется плагин Yoast SEO или Rank Math, проверьте шаблоны описаний.
  4. Атрибуты placeholder в формах — подсказки в полях ввода часто остаются на английском языке.
  5. Атрибуты aria-label — хотя они не видны обычным пользователям, закон может затрагивать и эти элементы.
// Фильтр для русификации шаблона заголовка в Yoast SEO
add_filter('wpseo_title', function($title) {
    // Замена «Page» на «Страница» в title
    $title = str_replace(' - Page ', ' - Страница ', $title);
    return $title;
});

// Русификация alt-текстов для WooCommerce
add_filter('woocommerce_product_get_image', function($image, $product) {
    if (strpos($image, 'alt=""') !== false) {
        $name = $product->get_name();
        $image = str_replace('alt=""', 'alt="' . esc_attr($name) . '"', $image);
    }
    return $image;
}, 10, 2);

Русификация JavaScript-компонентов

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

// Передача русских строк в JavaScript
function mytheme_localize_scripts() {
    wp_localize_script('mytheme-main', 'mythemeStrings', array(
        'loading'    => 'Загрузка...',
        'error'      => 'Произошла ошибка',
        'success'    => 'Успешно отправлено',
        'confirm'    => 'Вы уверены?',
        'close'      => 'Закрыть',
        'share'      => 'Поделиться',
        'copy'       => 'Копировать ссылку',
        'copied'     => 'Скопировано!',
        'noResults'  => 'Ничего не найдено',
        'showMore'   => 'Показать ещё',
    ));
}
add_action('wp_enqueue_scripts', 'mytheme_localize_scripts');

Особые случаи: что делать с техническими терминами

Закон 168-ФЗ предусматривает исключения для технических терминов, не имеющих общепринятых аналогов на русском языке. Однако интерпретация этих исключений может быть неоднозначной. Рекомендуем ознакомиться с перечнем исключений из закона и использовать словарь замен для поиска русских эквивалентов технических терминов.

Основные принципы при работе с техническими терминами в WordPress:

Проверка шрифтов и кодировки

Убедитесь, что используемые на сайте шрифты корректно отображают кириллические символы. Многие Google Fonts по умолчанию подгружаются только с латинским набором символов. Добавьте кириллический подмножество при подключении шрифтов:

/* Подключение Google Font с кириллицей */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap&subset=cyrillic,cyrillic-ext');

/* Или в HTML */
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap&subset=cyrillic,cyrillic-ext" rel="stylesheet">

Также проверьте, что в настройках базы данных WordPress используется кодировка UTF-8 (utf8mb4). Это необходимо для корректного хранения и отображения всех кириллических символов, включая букву «ё» и специальные типографские знаки.

Чек-лист русификации WordPress по 168-ФЗ

Используйте этот список для систематической проверки всех элементов вашего сайта на WordPress:

  1. Язык сайта установлен как «Русский» в настройках WordPress
  2. Обновлены все файлы переводов (ядро, темы, плагины)
  3. Проверены все страницы на наличие англоязычных строк в теме
  4. Русифицированы кнопки, формы и навигационные элементы
  5. Переведены шаблоны WooCommerce (если используется)
  6. Проверены и обновлены alt-тексты всех изображений
  7. Русифицированы meta title и description для всех страниц
  8. Проверены placeholder-ы во всех формах
  9. Русифицированы строки в JavaScript-компонентах
  10. Шрифты поддерживают кириллицу
  11. Кодировка базы данных UTF-8
  12. Проверены страница 404 и страница результатов поиска
  13. Русифицированы виджеты боковой панели и подвала
  14. Проведено финальное автоматическое сканирование

Регулярное обслуживание и мониторинг

Русификация — это не разовая задача. Каждое обновление темы, плагина или самого WordPress может привнести новые непереведённые строки. Рекомендуем настроить регулярное сканирование сайта через КириллоСкан и подключить мониторинг для своевременного обнаружения новых нарушений. Подробнее о размерах штрафов за нарушение 168-ФЗ вы можете узнать в соответствующем разделе базы знаний.

Заключение

Русификация WordPress-сайта по 168-ФЗ — это комплексная задача, требующая внимания к деталям и систематического подхода. Основные сложности связаны с многообразием тем и плагинов, каждый из которых может содержать собственные непереведённые строки. Используйте описанные в данном руководстве инструменты и методы для поэтапной русификации, и не забывайте о регулярном мониторинге. Автоматизированные средства проверки, такие как КириллоСкан, помогут поддерживать сайт в соответствии с требованиями закона на постоянной основе.

Просканируйте свой сайт

Автоматическая проверка на все требования 168-ФЗ. Результат за 2 минуты.