Cómo deshabilitar los emojis de WordPress

PHPWordPress

Desde WordPress 4.2 se han introducido los emojis o smileys, que son algo así como emoticonos que no utilizaremos si tenemos más de 14 años. El caso es que agregarán un montón de código JavaScript en todas nuestras páginas más un montón de código inútil, algo que puede que no sea del agrado del todo el mundo. Además, se cargan desde otra página externa en formato SVG, algo que puede afectar al rendimiento de nuestra web.

Lo cierto es que se debería haber incluido alguna opción en WordPress para desactivarlos, pero se incluye nada. En esta pequeña guía vamos a ver cómo podemos deshacernos de ellos de varias formas: con código propio y utilizando algún plugin.

Eliminar emojis por nosotros mismos

Par ello bastará eliminaros al inicio de WordPress mediante el hook init. Los hooks son algo así como funciones que nos permiten modificar o reemplazar otras funciones, que habitualmente pertenecen al núcleo de WordPress. Esta sería la función para desactivar todas las funciones relativas a los emojis tanto del front-end como del editor TinyMCE:

function disable_wp_emojicons() {
    remove_action( 'admin_print_styles', 'print_emoji_styles' );
    remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
    remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
    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' );
    remove_action( 'wp_print_styles', 'print_emoji_styles' );
    add_filter( 'tiny_mce_plugins', 'disable_emojicons_tinymce' );
}
add_action( 'init', 'disable_wp_emojicons' );

Lo que hemos hecho es crear una función a la que luego llamamos mediante add_action.

Para desactivar los emojis por completo de TinyMCE, también debemos usar la siguiente función:

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

Ya hemos terminado.

Eliminar los emojis mediante un plugin

También podemos utilizar el plugin Disable Emojis para desactivarlos. Podéis encontrarlo aquí.

De momento, ya exite una petición para poder deshabilitarlos en las opciones de WordPress, así que por ahora, nos tendremos que conformar con alguna de estos métodos.


Avatar de Edu Lazaro

Edu Lázaro: Ingeniero técnico en informática, actualmente trabajo como desarrollador web y programador de videojuegos.

👋 Hola! Soy Edu, me encanta crear cosas y he redactado esta guía. Si te ha resultado útil, el mayor favor que me podrías hacer es el de compatirla en Twitter 😊

Si quieres conocer mis proyectos, sígueme en Twitter.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

“- Hey, Doc. No tenemos suficiente carretera para ir a 140/h km. - ¿Carretera? A donde vamos, no necesitaremos carreteras.”