Emoji — это забавные иконки, которые WordPress по умолчанию загружает на сайт с помощью специальных скриптов и стилей. Однако не все сайты нуждаются в их использовании, и зачастую они замедляют загрузку страниц, особенно на мобильных устройствах. В этой статье мы подробно разберем, как полностью удалить emoji из WordPress, чтобы ускорить сайт и уменьшить количество запросов.
Почему стоит удалить emoji из WordPress: влияние на производительность
По умолчанию WordPress добавляет на каждую страницу скрипты и стили для поддержки emoji, что увеличивает время загрузки и количество HTTP-запросов. Особенно это заметно на сайтах с высокой посещаемостью или на медленных соединениях.
Удаление emoji уменьшает объем загружаемых данных и снижает нагрузку на сервер, что положительно сказывается на SEO и пользовательском опыте. Если ваша аудитория не нуждается в отображении emoji, то отключение их — простой способ оптимизации.
Кроме того, некоторые плагины, например Clearfy Pro, предлагают удобные опции для отключения emoji, но мы рассмотрим и кодовые решения без плагинов.
Как отключить загрузку emoji с помощью кода в functions.php
Самый надежный способ удалить emoji — отключить все хуки, которые добавляют скрипты и стили для emoji. Для этого добавим следующий код в файл functions.php вашей темы или в плагин для пользовательских функций:
function wptask_remove_emoji_support() {
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', 'wptask_disable_emojicons_tinymce');
}
add_action('init', 'wptask_remove_emoji_support');
function wptask_disable_emojicons_tinymce($plugins) {
if (is_array($plugins)) {
return array_diff($plugins, array('wpemoji'));
} else {
return array();
}
}
Этот код отключает загрузку скриптов, стилей и фильтров, отвечающих за emoji, а также удаляет плагин emoji из редактора TinyMCE. Благодаря этому посетители вашего сайта не будут загружать лишние файлы.
Дополнительные методы удаления emoji: оптимизация HTML и CSS
Иногда темы или плагины могут добавлять свои собственные emoji или стили, которые не отключаются стандартным кодом. В таких случаях можно дополнительно:
- Удалить ссылки на emoji-шрифты из
<head>с помощью фильтраstyle_loader_tagили прямого удаления с помощью jQuery. - Заменить emoji на обычные символы или изображения с помощью фильтров WordPress.
- Использовать плагин Clearfy Pro, который предлагает опцию отключения emoji без кода.
Для удаления всех ссылок на emoji-шрифты можно добавить такую функцию:
function wptask_remove_emoji_dns_prefetch( $urls, $relation_type ) {
if ( 'dns-prefetch' === $relation_type ) {
return array_diff( $urls, array( 'https://s.w.org/images/core/emoji/13.1.0/72x72/' ) );
}
return $urls;
}
add_filter( 'wp_resource_hints', 'wptask_remove_emoji_dns_prefetch', 10, 2 );
Это предотвратит предварительную загрузку ресурсов emoji, что дополнительно сократит трафик.
Проверка успешного удаления emoji и рекомендации по тестированию
После внесения изменений важно проверить, что emoji действительно не загружаются. Для этого:
- Откройте консоль браузера (F12) на странице сайта и проверьте список загружаемых ресурсов — скрипты и стили emoji должны отсутствовать.
- Проверьте исходный код страницы на предмет отсутствия
print_emoji_detection_scriptи связанных функций. - Используйте инструменты для анализа скорости сайта, например Google PageSpeed Insights или GTmetrix, чтобы увидеть улучшение.
Если вы используете кэш и CDN, не забудьте очистить их после внесения изменений, чтобы увидеть результат.
Что делать, если emoji всё еще отображаются?
Проверьте, нет ли в теме или плагинах подключения emoji-скриптов вручную. Если такие есть, их нужно отключить или удалить отдельно. Иногда помогает временное отключение всех плагинов и постепенное включение для выявления виновника.
Заключение: почему удаление emoji — важный шаг в оптимизации WordPress
Удаление emoji — не самая очевидная, но действенная оптимизация, которая помогает уменьшить количество запросов и ускорить загрузку страниц. Особенно это важно для мобильных пользователей и сайтов с высокой посещаемостью.
Кодовые решения позволяют гибко контролировать процесс без дополнительных плагинов, а при необходимости можно использовать и плагины, например Clearfy Pro, чтобы упростить задачу.
Применяйте наши рекомендации, тестируйте сайт и добивайтесь максимальной скорости загрузки без лишних элементов!