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 одним кликом.