Emoji – это маленькие изображения, которые WordPress автоматически добавляет на ваш сайт через встроенные скрипты и стили. Хотя они делают контент более выразительным, для многих сайтов это лишняя нагрузка, которая замедляет загрузку страниц и увеличивает количество HTTP-запросов. В этой статье мы подробно рассмотрим, как эффективно отключить Emoji в WordPress, чтобы ускорить работу сайта и повысить производительность.
Почему стоит отключать Emoji в WordPress? — влияние на скорость и производительность
По умолчанию WordPress подключает скрипты и стили для отображения Emoji, которые загружаются на каждую страницу сайта. Это приводит к нескольким проблемам:
- Увеличение количества HTTP-запросов, что замедляет загрузку страниц.
- Дополнительные стили и скрипты занимают место в кэше браузера.
- Если Emoji не используются на сайте, эти ресурсы становятся лишними.
Для сайтов с минималистичным дизайном и без необходимости использовать Emoji отключение этих ресурсов поможет улучшить скорость и снизить нагрузку на сервер.
Как отключить Emoji в WordPress без плагинов — кодовые решения
Самый простой и надежный способ отключить Emoji — добавить несколько строк кода в файл functions.php вашей темы или в отдельный плагин для кастомных функций. Ниже пример функции wpcat_disable_emojis, которая отключает все Emoji:
function wpcat_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', 'wpcat_disable_emojis_tinymce');
add_filter('wp_resource_hints', 'wpcat_disable_emojis_remove_dns_prefetch', 10, 2);
}
add_action('init', 'wpcat_disable_emojis');
function wpcat_disable_emojis_tinymce($plugins) {
if (is_array($plugins)) {
return array_diff($plugins, array('wpemoji'));
} else {
return array();
}
}
function wpcat_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 из фронтенда и админки.
- Убираем фильтры, которые преобразуют Emoji в контенте, RSS и письмах.
- Отключаем плагин
wpemojiв редакторе TinyMCE. - Удаляем DNS prefetch для сервера Emoji, чтобы не тратить лишние запросы.
Использование плагинов для отключения Emoji — быстрые готовые решения
Если вы не хотите самостоятельно работать с кодом, можно воспользоваться легкими плагинами, которые сделают отключение Emoji быстрым и безопасным:
- Disable Emojis — плагин, специально созданный для отключения всех функций Emoji в WordPress. Просто установите и активируйте, и все скрипты будут отключены.
- Perfmatters — плагин для оптимизации скорости сайта, где есть опция отключения Emoji и других ненужных скриптов.
- WP Rocket — популярный кеш-плагин с широкой функциональностью, в том числе отключением Emoji для ускорения загрузки.
Использование плагина удобно для тех, кто не хочет рисковать, редактируя код, или предпочитает гибкие настройки через интерфейс.
Проверка результата — как убедиться, что Emoji отключились
После применения кода или установки плагина важно проверить, что Emoji действительно отключены и сайт стал работать быстрее. Для этого:
- Откройте исходный код страницы (Ctrl+U) и убедитесь, что нет ссылок на
wp-emoji-release.min.jsили стилей Emoji. - Используйте инструменты разработчика в браузере, чтобы проверить количество HTTP-запросов. Сравните их с показателями до отключения Emoji.
- Проверьте сайт на сервисах для теста скорости, таких как Google PageSpeed Insights или GTmetrix, чтобы увидеть улучшение.
Краткое резюме и советы по оптимизации WordPress
Отключение Emoji — небольшая, но эффективная оптимизация для сайтов, где эти символы не используются. Если вы хотите еще больше ускорить WordPress, рассмотрите:
- Отключение ненужных скриптов и стилей, которые не влияют на пользовательский опыт.
- Использование кеширования и CDN для ускорения загрузки.
- Минимизация и объединение CSS и JS файлов.
- Оптимизацию изображений и использование современных форматов.
Внедряя эти техники вместе с отключением Emoji, вы сможете существенно улучшить скорость и производительность вашего сайта на WordPress.