Desativar emojicons introduzidos com o WP 4.2

128

Então o WP 4.2 introduziu emoticons (smileys) que basicamente adicionam JS e outros trechos em todas as suas páginas. Algo que algumas pessoas podem achar chocante. Como se apaga completamente todas as ocorrências disso?

    
por Christine Cooper 27.04.2015 / 21:37
fonte

7 respostas

185

Vamos ligar em init e remover ações da seguinte forma:

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' );

Vamos precisar da seguinte função de filtro para desativar os emojicons do TinyMCE:

function disable_emojicons_tinymce( $plugins ) {
  if ( is_array( $plugins ) ) {
    return array_diff( $plugins, array( 'wpemoji' ) );
  } else {
    return array();
  }
}

Agora nós respiramos e fingimos que esse recurso nunca foi adicionado ao núcleo ... particularmente enquanto muitos bugs resolvidos são ainda a ser implementado.

Isso está disponível como um plugin, Disable Emojis .

Alternativamente, você pode substituir os smilies pelas versões originais das versões anteriores do WordPress usando Smilies Clássicos .

Atualizar

Também podemos remover a pré-busca de DNS retornando false no filtro emoji_svg_url (obrigado @yobddigi):

add_filter( 'emoji_svg_url', '__return_false' );
    
por Christine Cooper 27.04.2015 / 21:37
fonte
27

Melhor solução se você quiser desabilitar isso: use um plugin.

O mesmo código dos comentários de Christine: enlace

O mesmo código que também corrige os smilies para os mais antigos: enlace

Fonte: Eu, já que escrevi esse código em primeiro lugar. enlace

    
por Otto 29.04.2015 / 00:02
fonte
14

Esta é a maneira simples de remover emoticons. Adicione o código abaixo ao seu function.php

remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'wp_print_styles', 'print_emoji_styles' ); 
    
por Exclutips 24.06.2015 / 23:48
fonte
2

Se você quiser evitar que o Wordpress converta automaticamente seus smilies ASCII da velha escola para emoticons Unicode (como ;-) to

por Christallkeks 13.06.2017 / 16:48
fonte
0

Eu tentei alguns códigos acima, mas os únicos códigos funcionam do meu jeito é este.

Não se esqueça de fazer backup de suas funções.php antes de implementar esses códigos.

// REMOVE WP EMOJI
remove_action('wp_head', 'print_emoji_detection_script', 7);
remove_action('wp_print_styles', 'print_emoji_styles');

remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
remove_action( 'admin_print_styles', 'print_emoji_styles' );
    
por johnhgaspay 10.07.2017 / 06:33
fonte
-1

Boas notícias, adicionei uma solicitação de recurso:

Introduza uma nova opção no WordPress WP_EMOICONS aqui enlace

e aparentemente isso foi marcado como duplicado enlace então podemos esperar algo como

define( 'WP_EMOICONS', false );

nos próximos lançamentos do WordPress.

    
por prosti 07.10.2016 / 15:04
fonte
-2

Como os emoticons do WordPress são exibidos em s.w.org e não são compactados, isso afeta o tempo de carregamento do SVG, dependendo de quantos emoticons você está usando, e pode até mesmo enviar avisos na ferramenta PageSpeed Insights do Google.

Para corrigir esse problema, você pode veicular os emojis diretamente do site do WordPress e não fazer chamadas externas por meio do js.

Isto pode ser conseguido instalando o plugin Emoji Comprimido que está disponível gratuitamente no repositório de plugins do WordPress.org. .

Quando o plug-in é ativado, a compactação oferece economia na faixa de 3kb ~ 1,3kb (aproximadamente% 60) por emoji.

Fonte: WPTavern

    
por Antony Agnel 15.11.2016 / 15:17
fonte