Emoji активно используются в современных сайтах и мессенджерах, но для многих проектов WordPress они не являются необходимостью. При этом загрузка скриптов и стилей для Emoji может замедлять работу сайта, особенно на больших и нагруженных ресурсах. В этой статье рассмотрим, как автоматически отключить Emoji в WordPress с помощью кода и плагинов, чтобы повысить скорость загрузки и улучшить производительность.
Почему стоит отключить Emoji в WordPress
По умолчанию WordPress подключает скрипты и стили для Emoji, чтобы корректно отображать их во всех браузерах, включая устаревшие. Однако:
- Эти дополнительные ресурсы увеличивают количество HTTP-запросов.
- Повышают время загрузки страниц, особенно на мобильных устройствах с медленным интернетом.
- Могут влиять на показатели Core Web Vitals и SEO.
Если ваш сайт не использует Emoji активно, отключение этой функциональности — простой способ оптимизации.
Как автоматически отключить Emoji с помощью кода
Для отключения Emoji в WordPress нужно убрать их скрипты, стили и фильтры. Добавьте следующий код в файл functions.php вашей темы или в отдельный плагин:
function wpmanager_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', 'wpmanager_disable_emojis_tinymce');
add_filter('wp_resource_hints', 'wpmanager_disable_emojis_remove_dns_prefetch', 10, 2);
}
add_action('init', 'wpmanager_disable_emojis');
function wpmanager_disable_emojis_tinymce($plugins) {
if (is_array($plugins)) {
return array_diff($plugins, array('wpemoji'));
} else {
return array();
}
}
function wpmanager_disable_emojis_remove_dns_prefetch($urls, $relation_type) {
if ('dns-prefetch' === $relation_type) {
$emoji_svg_url = 'https://s.w.org/images/core/emoji/';
foreach ($urls as $key => $url) {
if (strpos($url, $emoji_svg_url) !== false) {
unset($urls[$key]);
}
}
}
return $urls;
}Этот код полностью отключит загрузку Emoji-скриптов и стилей как на фронтенде, так и в админке, а также исключит их из редактора TinyMCE и DNS-prefetch.
Использование плагина Clearfy для управления Emoji
Если вы предпочитаете решение без кода, можно использовать плагин Clearfy — мощный инструмент оптимизации WordPress. В Clearfy есть опция для отключения Emoji, которая выполняет те же действия, что и код выше, но через удобный интерфейс.
Преимущества Clearfy:
- Отключение Emoji в один клик.
- Множество других функций для оптимизации сайта и безопасности.
- Регулярные обновления и поддержка.
Проверка отключения Emoji и замеры производительности
После отключения Emoji важно проверить, что скрипты и стили больше не загружаются. Для этого:
- Откройте страницу сайта в браузере.
- Через инструменты разработчика (F12) перейдите на вкладку Network.
- Отфильтруйте запросы по слову
emojiилиwp-emoji-release.min.js. - Если таких файлов нет — отключение успешно.
Также рекомендуем замерить время загрузки сайта до и после, например, с помощью Google PageSpeed Insights или GTmetrix. Вы увидите снижение количества запросов и улучшение показателей скорости.
Заключение по теме отключения Emoji в WordPress
Автоматическое отключение Emoji — простая, но эффективная оптимизация для сайтов на WordPress, которые не используют эти символы. Это снижает нагрузку на сервер, уменьшает количество запросов и ускоряет загрузку страниц. Вы можете реализовать это как вручную через добавление кода, так и с помощью плагинов, например Clearfy.