Июн
1
4

Как отключить emoji в WordPress

Как отключить emojiПару лет назад я рассказывал об интересном плагине эмодзи для вордпресс, который позволял добавить в админку поддержку данных смайликов. После установки модуля WP Emoji One в текстовом редакторе появлялось много интересных иконок для украшения статей блога. Спустя некоторое время разработчики WordPress 4.2 решили упростить всем жизнь и интегрировали эмозди в ярдо системы.

Возможно, они и руководствовались благими намерениями, только вот задумка получилось слегка поспешной. Я бы не сказал, что это насколько важная и актуальная функция чтобы автоматически добавлять ее всем пользователям. Поэтому не удивительно, что вопрос как отключить emoji возникает у многих.

В вордпресс header и так перегружен множеством лишних скриптов, не хватало тут еще эмозди. Вместе со всеми стандартными элементами в HEAD сайта грузится скрипт wp-emoji-release.min.js + стили. Если вы не планируете использовать данную функцию в работе, имеет смысл отключить эмодзи.

Существует 2 метода решения задачи — через файл функций и с помощью плагина.

Хак отключения Emoji

Чтобы удалить эмодзи из HEAD вам нужно:

  1. Зайти в раздел админки «Внешний вид» — «Редактор».
  2. Открыть для редактирования файл functions.php.
  3. Добавляете в код следующие строки:
remove_action('wp_head', 'print_emoji_detection_script', 7);
remove_action('wp_print_styles', 'print_emoji_styles');
  1. Сохраняете файл и проверяете наличие скрипта в исходниках веб-страницы сайта. Его там, разумеется, быть не должно.

Кстати, в сети я встречал еще один альтернативный вариант. Он более громоздкий и содержит куда больше строк кода. Я так понимаю решение позволяет отключить emoji в wordpress админке, а не только на сайте. В частности функция disable_emojicons_tinymce убирает поддержку смайликов из редактора TinyMCE.

function disable_wp_emojicons() {
 
  // all actions related to emojis
  remove_action( 'admin_print_styles', 'print_emoji_styles' );
  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_filter( 'wp_mail', 'wp_staticize_emoji_for_email' );
  remove_filter( 'the_content_feed', 'wp_staticize_emoji' );
  remove_filter( 'comment_text_rss', 'wp_staticize_emoji' );
 
  // filter to remove TinyMCE emojis
  add_filter( 'tiny_mce_plugins', 'disable_emojicons_tinymce' );
}
add_action( 'init', 'disable_wp_emojicons' );
 
function disable_emojicons_tinymce( $plugins ) {
  if ( is_array( $plugins ) ) {
    return array_diff( $plugins, array( 'wpemoji' ) );
  } else {
    return array();
  }
}

Добавляете коданалогично в functions.php. После внедрения можно сделать вид будто бы функция Emoji никогда в ядро и не добавлялась:) Кстати, данный вариант решения также реализуется и через специальный плагин, речь о котором пойдет ниже.

Disable Emojis

Тем, кому сложно или страшно делать правки в файлах шаблона, советуем просто воспользоваться готовым модулем.

Плагин Disable Emojis - отключаем эмодзи

Скачать Disable Emojis можно тут либо установить через админку. Плагин работает сразу после установки и не содержит никаких настроек. Преимущество этого метода в том, что при смене шаблона вам не придется заново вносить правки в functions.php.

Кстати, интересный комментарий в описании модуля от разработчика. Он утверждает, что даже после отключения Emoji они все равно будут работать в тех браузерах, что имеют встроенную поддержку функции. Модуль же просто позволяет убрать emoji код из wordpress, который используется для поддержки старых браузеров.

Если же вы захотите заменить эмодзи на обычные «рожицы», то используйте разные плагины смайликов о которых я рассказывал ранее.

Что вообще думаете про идею отключить emoji в WordPress? Уже реализовали это в своем блоге? Я для одного проекта под заказ уже успел их убрать.

комментария 4 к статье “Как отключить emoji в WordPress”

  • Валерий   01.06.2016

    Спасибо очень полезно и интересно! С уважением, Валерий Бородин!!!

  • 2wordpress   07.06.2016

    Валерий, я ваши комментарии наблюдаю почти на всех блогах, которые я читаю. Уже прям надоели))))

  • Tod   07.06.2016

    2wordpress, продвижение через комментарии еще никто не не отменял, вы ведь тоже не используете имя в соответствующем поле, а пишете название сайта)) Главное чтобы не откровенный спам был, ссылки на блоги я оставляю.

  • Валерий   07.06.2016

    Не знаю, чем мои комментарии 2wordpress надоели? Но я все же посмотрел его блог и подписался на него, теперь буду и его комментировать. Если он конечно не против?! :)
    PS: Комментировать стараюсь по существу и ни кого не обижать. Так, что если вам не нравиться, то пишите об этом сразу. Спасибо!

Оставить комментарий


Блог Wordpress Inside поможет вам научиться работать в вордпресс, закрепить и расширить имеющиеся знания. Плагины и шаблоны, разные хаки и функции wp, оптимизация и безопасность системы – все это и намного больше вы сможете найти на страницах нашего проекта!

Если хотите быстро и оперативно получать последние новости и статьи, то рекомендуем подписаться на обновления блога:

Последние посты
Полезные заметки
Лучшее в категории
Облако тегов
Скажи свое мнение!

В чем основные плюсы Wordpress?

Посмотреть результаты

Загрузка ... Загрузка ...
Друзья проекта
Последние новости