VovkDesign

Блог Александры и Владимира Вовк

RSS лента
wp-puzzle

Отключаем Emoji в WordPress — быстрый сайт без эмоций 💪

Думаю, многие владельцы сайтов на WordPress заметили появление новых смайлов с версии 4.2 — стандартные иконки сменились на популярные сегодня Emoji (эмодзи, так называемые смайлы-эмоции). Выглядят они очень привлекательно, и многим пришлись по душе. Но в этом нововведении есть ложка дегтя. Меня, как разработчика сайтов различного назначения, особенно беспокоят вопросы необходимости этих смайлов и их негативного влияния на скорость загрузки.

иконки для emoji в wordpress

Эмоции и сайты

Emoji скорее пригодятся для владельцев блога или развлекательного сайта — они разбавят статьи и придадут окраску общению в комментариях. Но WordPress давно уже вырос в более универсальную CMS и я не вижу потребности в подключении смайлов-эмоций для корпоративного сайта или интернет-магазина (кстати, одна из наших последних работ — как раз таки интернет-магазин на WordPress).

разнообразие смайлов-эмоций для вордпресс

Да и вопрос необходимости иконок на блогах также можно подвергнуть сомнению — не каждая тематика требует смайлов, даже для расслабленного общения в комментариях).

Минусы подключенных Emoji

В самих эмодзи вообще ничего плохого нету. Вопрос скорее в том, как разработчики WordPress подключают этот функционал:

html код, подключающий эмоции в вордпресс
Да! Скрипты и стили подключаюся inline (прямо в html) и делается все это безобразие в шапке сайта (что безоговорочно негативно сказывается на скорости загрузки страницы). Реализованы эмоции с помощью внешней библиотеки от Twitter, которая называется Twimoji, а сами иконки загружаются с сайта wordpress.org (внешний запрос при загрузке каждой иконки на странице).

Это все мне не по духу, и поэтому на нашем сайте смайлы-эмоции отключены. Для клиентов я также отключаю эмодзи, для корпоративных — в обязательном порядке, для блогов — рекомендую это делать (все таки многие любят кроме Emoji наставить плагинов, которые и без того подключают много JS и CSS файлов).

Как отключить Emoji на сайте WordPress

Для отключения смайлов эмоций на своем сайте вордпресс, нужно добавить небольшой код, приведенный ниже. Вставьте его в файл functions.php своей темы или (что предпочтительнее) в специальный плагин FunctionsPHP:

/* --------------------------------------------------------------------------
 * Отключаем Emojii
 * -------------------------------------------------------------------------- */
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', 'disable_wp_emojis_in_tinymce' );
function disable_wp_emojis_in_tinymce( $plugins ) {
    if ( is_array( $plugins ) ) {
        return array_diff( $plugins, array( 'wpemoji' ) );
    } else {
        return array();
    }
}
/* --------------------------------------------------------------------------- */

Более простое решение — установить плагин Disable Emojis — он делает тоже самое, что и код выше. Никаких дополнительных опций нету, все просто.

Если хотите отключить Emoji и вернуть прежние смайлы — устанавливайте плагин Classic Smiles, он вернет старые смайлы WordPress и отключит Emoji.

После применения одного из методов текст в базе данных не меняется. И если ранее в статьях вставлялись emoji иконки, то они никуда не исчезнут, и просто будут отображаться в черно-белом варианте:

черно-белые emoji

Кстати, буквально еще полгода назад Emoji активно использовали в SEO продвижении — красочные иконки добавляли в title или description и Google показывал всю эту красоту, которая весьма эффективно привлекала внимание. Но с мая поисковик отказался от отображения Emoji в поиске, по понятным всем причинам 🙂

emoji и выдача google

Комментарии всего: 20

  • Ох уж эти оптимизаторы. Вечно всё сделают текстовым и черно белым 🙂

    • Dmitry, есть немного )))) Ну здесь главное без фанатизма, с пониманием где это нужно, а где нет

  • Спасибо, Александра. У меня сайт работает на версии WordPress 4.1 , скажите пожалуйста, обязательно ли всегда обновляться до последней версии ?

    • Лидия, в целях безопасности очень желательно. Как вариант можно ждать выхода исправленных версий (вот сейчас можно ставить 4.3.1, она уже с исправлениями ошибок основной версии 4.3)

  • Спасибо, Александра. Получается, что обновляешь WordPress, а у него свои «подводные камни», которые потом надо удалять или отключать. Слышала такое мнение, что смайлики в тексте — это дурной тон. Будем культурными!!! Статья на все 100% полезная!

  • Разработчики в новой версии WordPress ссылки в кнопке ответить закрыли в nofollow. И зачем нужно было так делать. На это есть сео-плагины. А если в статье будет много комментариев, то эти nofollow неизвестно как аукнуться.
    Еще большая проблема с рубриками. Если текст в описании рубрики прячешь в спойлер, то поисковик его почему-то не индексирует. Если же этот спойлер поместить в саму статью, то текст нормально индексируется. Ерунда какая-та.
    В последнее время разработчики занимаются не тем, чем нужно. Подключают какие-то смайлики, nofollow в кнопку добавили, с кастомайзером начали мудрить и так далее.

  • Мне не нравятся смайлы.

  • Александра, подскажите, пожалуйста, где именно разместить данный код в плагине FunctionsPHP? Делала его по вашим рекомендациям, сейчас в нем только коды статистики Я.Метрики и Аналитикс. Спасибо.

    • Заряна, код добавить можно в самый конец файла, вне функций с метрикой и аналитикой

  • Спасибо! Ваш блог супер! 🙂

  • Здравствуйте, а как определить есть ли в моём шаблоне эти Emoji вообще, прежде чем вставлять код?
    Спасибо

  • Александра, спасибо за статью!!!!
    Разобрался сам, в моем шаблоне Emoji были. нашёл их через исходный код.
    Вставил Ваш код в самый конец файла functions.php и они исчезли из исходного кода.
    Надеюсь, что вставил правильно, пока сбоев не обнаружил.
    Есть сразу результат — на один запрос к серверу стало меньше.
    Приятно доходить своим умом, а Вас прошу подбрасывайте такие же интересные идеи своим читателям!

  • Спасибо за информацию 🙂

  • Спасибо! Полезная статья!

  • Здравствуйте, Александра. Спасибо за статью. Так как я сейчас нахожусь в начале пути и в выборе шаблона, хочется иметь более менее чистый код, у меня вопрос. Есть ли в Вашем шаблоне Basic этот самый лишний код, эмодзи и т.д. ? Шаблон понравился, надо ли с ним что-то делать?

    • Павел, такую опцию начали добавлять только в премиум шаблоны. Поскольку тема BASIC находится в официальном каталоге, мы не можем добавить функции, которые затрагивают настройку или изменения чего-либо, кроме внешнего вида. Это считается «территорией» плагинов. Скачайте наш плагин FunctionsPHP и добавьте код в него — он будет работать независимо от темы и в будущем.

  • Спасибо, сразу скопировала код и вставила. Эмоции исчезли сразу, а скорость не изменилась.

  • Александра, подскажите как правильно называются черно-белые иконки и есть ли ресурс с полным список иконок.

    Спасибо!

    • это и есть эмоджи — ч/б они будут если отключить код по примеру из статьи. Попробуйте посмотреть emojicopy.com

  • Спасибо за статью. А как узнать, что все сделал правильно и лишний код удалился?

Комментировать

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

wp-puzzle.com logo