Как отключить Emoji в WordPress: эффективный метод и примеры кода

Emoji — это забавные иконки, которые WordPress по умолчанию добавляет на страницы сайта, чтобы поддерживать отображение смайликов в разных браузерах и устройствах. Однако они добавляют дополнительные HTTP-запросы и JavaScript, что может замедлять загрузку сайта и увеличивать нагрузку на сервер. Для веб-разработчиков и владельцев сайтов, стремящихся оптимизировать производительность, важно уметь правильно отключать Emoji без ущерба для пользовательского опыта.

Почему стоит отключать Emoji в WordPress

Основная причина отключения Emoji — улучшение скорости загрузки страниц и уменьшение количества запросов к серверу. По умолчанию WordPress загружает скрипты и стили для Emoji с внешнего сервера, что приводит к лишним запросам. Кроме того, некоторые темы и плагины могут конфликтовать с этими скриптами, вызывая ошибки JavaScript.

Отключение Emoji особенно актуально для сайтов, где использование смайлов минимально или вообще не предусмотрено, например, корпоративных порталов, интернет-магазинов или технических блогов. Это позволяет:

  • Уменьшить количество HTTP-запросов;
  • Снизить нагрузку на клиентский браузер;
  • Избавиться от возможных конфликтов с другими скриптами;
  • Повысить показатели Core Web Vitals и SEO.

Как отключить Emoji в WordPress через код

Самый надежный способ — добавить в файл functions.php вашей темы или в отдельный плагин следующий код. Этот метод отключает все связанные с Emoji скрипты и стили, а также фильтры, которые обрабатывают Emoji в содержимом.

<?php
function wpapp_disable_emojis() {
    // Отключаем стили Emoji
    remove_action('wp_head', 'print_emoji_detection_script', 7);
    remove_action('admin_print_scripts', 'print_emoji_detection_script');
    remove_action('wp_print_styles', 'print_emoji_styles');
    remove_action('admin_print_styles', 'print_emoji_styles');

    // Удаляем фильтры, заменяющие текстовые смайлы на Emoji
    remove_filter('the_content_feed', 'wp_staticize_emoji');
    remove_filter('comment_text_rss', 'wp_staticize_emoji');
    remove_filter('wp_mail', 'wp_staticize_emoji_for_email');

    // Отключаем DNS prefetch для Emoji
    add_filter('emoji_svg_url', '__return_false');
}
add_action('init', 'wpapp_disable_emojis');
?>

Этот код полностью удалит загрузку Emoji-скриптов и стилей на фронтенде и в админке, а также предотвратит их использование в RSS и почтовых уведомлениях.

Объяснение кода

Функция wpapp_disable_emojis удаляет действия, которые WordPress добавляет для поддержки Emoji. Это:

  • print_emoji_detection_script — скрипт, который определяет поддержку Emoji;
  • print_emoji_styles — CSS стили для корректного отображения;
  • Фильтры wp_staticize_emoji и wp_staticize_emoji_for_email — преобразуют текстовые смайлы в Emoji в контенте и почте;
  • Фильтр emoji_svg_url — отключает предзагрузку ресурсов.

Отключение Emoji с помощью плагинов

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

Clearfy — универсальный оптимизатор

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

  • В панели Clearfy есть опция «Отключить Emoji» — активируете её и сохраняете настройки.
  • Плагин автоматически удалит все связанные ресурсы Emoji.

Disable Emojis

Плагин Disable Emojis — легкий и специализированный инструмент только для отключения Emoji. Устанавливаете, активируете, и все готово.

Проверка отключения Emoji и влияние на производительность

После отключения Emoji стоит проверить, что скрипты и стили действительно не загружаются. Для этого:

  • Откройте сайт в браузере, откройте инструменты разработчика (F12) и перейдите на вкладку «Network»;
  • Обновите страницу и найдите запросы, связанные с emoji, например wp-emoji-release.min.js;
  • Если таких запросов нет — отключение прошло успешно.

Для оценки влияния на производительность используйте сервисы типа Google PageSpeed Insights или GTmetrix. Обычно отключение Emoji позволяет уменьшить время загрузки и повысить показатели скорости.

Дополнительные советы по оптимизации загрузки Emoji

Если полностью отключать Emoji не хочется, но хочется снизить нагрузку, рассмотрите следующие варианты:

  • Заменить стандартные Emoji на локальные файлы, чтобы не зависеть от внешних ресурсов;
  • Использовать кэширование и минимизацию скриптов, чтобы ускорить загрузку;
  • Отключить загрузку Emoji только для определенных страниц, например, для главной и каталога, оставив в блогах.

Пример условного отключения Emoji только на главной странице:

<?php
function wpapp_conditional_disable_emojis() {
    if (is_front_page()) {
        remove_action('wp_head', 'print_emoji_detection_script', 7);
        remove_action('wp_print_styles', 'print_emoji_styles');
    }
}
add_action('wp', 'wpapp_conditional_disable_emojis');
?>

Вывод

Отключение Emoji в WordPress — простой, но эффективный способ ускорить сайт и облегчить нагрузку. Это особенно важно для проектов, где приоритет — быстродействие и минимализм. Используйте код из статьи или плагины, чтобы быстро внедрить изменения и проверить результат.

Если хотите комплексный инструмент для оптимизации, попробуйте Clearfy, который поможет улучшить скорость и безопасность WordPress одним кликом.

Наш каталог плагинов WordPress