Emoji — это забавный и удобный способ выразить эмоции в тексте, и WordPress автоматически добавляет поддержку Emoji на всех сайтах начиная с версии 4.2. Однако, для многих проектов, особенно коммерческих и корпоративных, загрузка дополнительных скриптов и стилей, связанных с Emoji, может замедлять работу сайта. В этой статье мы подробно рассмотрим, почему стоит отключить Emoji, как это сделать правильно и безопасно, а также приведём практические примеры кода и рекомендации по использованию плагинов.
Почему стоит отключить Emoji в WordPress? Влияние на скорость и производительность
По умолчанию WordPress включает скрипты и стили, которые загружаются на каждую страницу сайта для поддержки Emoji. Эти ресурсы обращаются к внешним сервисам и увеличивают количество HTTP-запросов, что приводит к замедлению загрузки страниц. Даже если вы не используете Emoji в контенте, эти файлы всё равно загружаются.
Проверка в инструментах разработчика показывает, что подключается файл wp-emoji-release.min.js, который весит около 10 Кб, а также соответствующие CSS-стили. В условиях, когда каждая миллисекунда важна, особенно для мобильных пользователей с медленным интернетом, отключение Emoji может дать заметный прирост скорости.
Кроме того, отключение Emoji уменьшает нагрузку на сервер и снижает количество запросов к внешним ресурсам, что положительно сказывается на безопасности и стабильности сайта.
Как отключить поддержку Emoji программно: пример кода для functions.php
Самый простой и надёжный способ убрать Emoji — добавить в файл functions.php вашей темы следующий код. Мы используем префикс wpbuy_, чтобы избежать конфликтов с другими функциями.
function wpbuy_disable_emojis() {
// Отключаем загрузку скрипта Emoji
remove_action('wp_head', 'print_emoji_detection_script', 7);
remove_action('admin_print_scripts', 'print_emoji_detection_script');
// Отключаем стили Emoji
remove_action('wp_print_styles', 'print_emoji_styles');
remove_action('admin_print_styles', 'print_emoji_styles');
// Отключаем фильтры в содержимом и комментариях
remove_filter('the_content', 'wp_staticize_emoji');
remove_filter('comment_text', 'wp_staticize_emoji');
// Отключаем DNS-prefetch для Emoji
add_filter('emoji_svg_url', '__return_false');
}
add_action('init', 'wpbuy_disable_emojis');
Этот код полностью отключит поддержку Emoji на фронтенде и в админке, уменьшит количество загружаемых файлов и улучшит время отклика сайта.
Использование плагинов для отключения Emoji
Если вы не хотите работать с кодом напрямую или боитесь ошибиться, можно использовать специализированные плагины. Вот несколько проверенных вариантов:
- Clearfy — многофункциональный плагин оптимизации, в котором есть опция отключения Emoji и многих других ненужных функций WordPress. Подробнее: https://wpshop.ru/plugins/clearfy/
- Disable Emojis — простой и лёгкий плагин, который отключает Emoji одним кликом. Хорош для тех, кто хочет минимальное вмешательство.
Использование плагинов удобно, если вы не хотите менять код темы и хотите иметь возможность быстро включить поддержку Emoji обратно.
Проверка результата и рекомендации по тестированию
После отключения Emoji важно проверить, что сайт работает корректно и что Emoji больше не загружаются. Для этого:
- Откройте любой пост с Emoji в содержимом и убедитесь, что они отображаются как обычные символы, без подгрузки дополнительных скриптов.
- В инструментах разработчика браузера на вкладке Network проверьте, что запросы к
wp-emoji-release.min.jsотсутствуют. - Проверьте скорость сайта с помощью Google PageSpeed Insights или GTMetrix — должно быть улучшение по разделу «Сокращение количества запросов» и «Минимизация ресурсов».
Если после отключения Emoji вы заметили проблемы с отображением символов, проверьте кодировку базы данных и используемый шрифт, так как некоторые Emoji могут не поддерживаться на уровне системы.
Дополнительные советы по оптимизации загрузки скриптов в WordPress
Отключение Emoji — это лишь один из способов уменьшить нагрузку на сайт. Для дальнейшей оптимизации рекомендуем:
- Использовать плагин Clearfy для комплексного управления ненужными скриптами и стилями (подробнее).
- Отключать скрипты и стили, которые не используются на конкретных страницах, через хуки
wp_enqueue_scripts. - Включить кэширование и использовать CDN для ускорения доставки статических файлов.
- Минимизировать и объединять CSS и JS с помощью плагинов или на уровне сборки темы.
Все эти меры в комплексе значительно повысят скорость загрузки и улучшат пользовательский опыт.