Emoji — это популярные смайлики, которые автоматически подгружаются WordPress для отображения на всех страницах сайта. Несмотря на их визуальную привлекательность, они могут негативно влиять на скорость загрузки страниц и увеличивать количество HTTP-запросов. Особенно это заметно на больших и нагруженных сайтах, где каждая миллисекунда важна.
Зачем отключать Emoji в WordPress: влияние на производительность
По умолчанию WordPress добавляет в заголовок страницы JavaScript-файл wp-emoji-release.min.js, а также стили и дополнительные элементы для поддержки Emoji в браузерах, которые их не умеют отображать. Эти ресурсы:
- Увеличивают время загрузки страницы, особенно на мобильных устройствах с медленным интернетом.
- Создают дополнительные HTTP-запросы, что повышает нагрузку на сервер и задержки.
- Могут конфликтовать с некоторыми плагинами и темами, вызывая ошибки или некорректное отображение.
Если вы не используете Emoji на сайте или хотите полностью контролировать загружаемые ресурсы, лучше отключить их поддержку. Это улучшит скорость и снизит нагрузку.
Как отключить Emoji в WordPress с помощью кода
Самый простой и надежный способ — добавить специальный код в файл functions.php вашей темы или в отдельный плагин. Ниже представлен пример функции wpstandart_disable_emojis, которая отключает Emoji полностью:
function wpstandart_disable_emojis() {
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');
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');
add_filter('tiny_mce_plugins', 'wpstandart_disable_emojis_tinymce');
add_filter('emoji_svg_url', '__return_false');
}
add_action('init', 'wpstandart_disable_emojis');
function wpstandart_disable_emojis_tinymce($plugins) {
if (is_array($plugins)) {
return array_diff($plugins, array('wpemoji'));
} else {
return array();
}
} Этот код удаляет все действия и фильтры WordPress, связанные с Emoji, включая поддержку в редакторе TinyMCE. Добавьте его в файл functions.php активной темы или создайте отдельный плагин для более чистого решения.
Отключение Emoji через плагины
Если вы не хотите трогать код, можно использовать плагины, которые выполняют эту задачу автоматически и безопасно. Вот несколько популярных вариантов:
- Disable Emojis — простой плагин, который отключает загрузку Emoji скриптов и стилей. Легкий и не требует настроек.
- Clearfy Pro — мощный плагин для оптимизации WordPress, в числе функций которого есть отключение Emoji и других ненужных ресурсов. Подробнее — Clearfy Pro на WPSHOP.
Использование плагина удобно, если вы не хотите вмешиваться в код, но помните, что для максимальной скорости лучше использовать минимальное количество плагинов.
Проверка отключения Emoji и тестирование скорости
После отключения Emoji важно убедиться, что скрипты и стили больше не загружаются. Для этого:
- Откройте исходный код страницы (Ctrl+U) и проверьте отсутствие ссылок на
wp-emoji-release.min.js. - В консоли браузера используйте вкладку Network и фильтр JS, чтобы удостовериться, что Emoji-скрипты не загружаются.
- Проверьте работу редактора на предмет отсутствия ошибок.
Для оценки реального улучшения скорости можно использовать инструменты:
Отключение Emoji часто даёт заметный прирост в показателях First Contentful Paint (FCP) и уменьшает общий размер страницы.
Дополнительные советы по оптимизации загрузки ресурсов в WordPress
Отключение Emoji — лишь один из шагов для ускорения сайта. Рекомендуется также:
- Минимизировать CSS и JavaScript, используя плагины или сборщики.
- Включить кэширование на уровне сервера и в браузере.
- Оптимизировать изображения и использовать lazy loading.
- Удалять или отключать ненужные плагины и темы.
Для комплексной оптимизации подойдёт плагин Clearfy Pro, который автоматизирует многие из этих процессов.