Désactiver les émojis WordPress pour la performance du site 🚀

Désactiver les émojis WordPress pour la performance du site 🚀
11 mn de lecture

Pourquoi désactiver les émojis dans WordPress et empêcher le chargement du script wp-emoji-release.min.js et autres ressources ? Vous vous posez cette question ? Eh bien, vous tombez pile-poil sur la bonne page.

Je ne vais pas vous expliquer ce que sont les émojis, car ces petites icônes qui permettent de transmettre des émotions (😁 😮 😍) ou autres (🎉 🚀 🎁) dans les messages sont partout : sur les réseaux sociaux, sur les sites Web, sur les smartphones... et aussi sur les sites conçus avec WordPress !

En effet, par défaut, WordPress prend en charge l'utilisation des émojis. Ce n'est pas un mal en soi. Je dirais même que c'est sympa que WordPress possède cette fonctionnalité.

Néanmoins, vous devez être bien conscient qu'en utilisant les émojis de WordPress, vous ne pourrez afficher que des Twemoji. Et que cela aura également un impact dans le temps de chargement de toutes les pages de votre site WordPress, minime, j'en conviens, mais un impact tout de même.

De ce fait, il peut exister diverses raisons pour lesquelles vous recherchez un moyen de supprimer la prise en charge des émojis de WordPress :

  • Vous n'utilisez pas les émojis sur votre site WordPress
  • Vous souhaitez utiliser d'autres émojis que les Twemoji
  • L'optimisation de la performance de votre site WordPress est votre priorité

Personnellement, je désactive les émojis de WordPress pour optimiser la performance des sites. 🚀

Au travers de cet article, vous découvrirez donc pourquoi et comment désactiver complètement les émojis dans WordPress.

À quoi sert la prise en charge des émojis dans WordPress ?

La prise en charge des émojis dans WordPress permet d'intégrer des émojis dans les publications, pages et commentaires. Cette fonctionnalité est disponible depuis la sortie de WordPress 4.2 en avril 2015.

Elle sert plus précisément à afficher les émojis dans un format rétrocompatible sur les appareils avec des technologies très anciennes dépourvues de prise en charge native des emojis.

WordPress affiche les émojis en SVG grâce à Twemoji, l'ancien projet de bibliothèque d'émojis open source créé en 2014 par Twitter (à présent X). Il s'agit en fait d'une bibliothèque qui offre un support pour tous les émojis définis par Unicode. Ainsi, quel que soit l'appareil ou le système d'exploitation utilisé, l'apparence des émojis reste la même.

ℹ️ Après le rachat de Twitter par Elon Musk en 2022, la bibliothèque Twemoji open source de Twitter est désormais considérée comme abandonnée.

Cependant, un fork a été créé par plusieurs anciens employés de Tweeter afin de maintenir la bibliothèque Twemoji à jour.

Pourquoi faut-il désactiver les émojis (Twemoji) de WordPress ?

Lorsque l'on optimise la performance d'un site, tout ce qui est superflu doit être supprimé ou remplacé. En bref, il faut faire en sorte de diminuer le nombre des requêtes qui allongent inutilement le temps de chargement de la page.

Or, pour convertir les émojis dans le format rétrocompatible Twemoji, WordPress ajoute non seulement un fichier JavaScript supplémentaire wp-emoji-release.min.js :

script wp-emoji-release-min-js chargé par WordPress

mais aussi du CSS en ligne :

CSS en ligne pour la prise en charge des émojis dans WordPress

Le gros problème est que le script wp-emoji-release.min.js se charge sur toutes les pages de votre site même si vous n'utilisez pas les émojis.

Et puis, cela ajoute également une requête externe vers le site : https://s.w.org/images/core/emoji/15.0.3/svg/ afin de récupérer les images Twemoji.

Alors, c'est bien joli que WordPress veuille faciliter l'affichage des émojis sur les différentes plateformes à l'aide des Twemoji. Mais cela augmente aussi légèrement le temps de chargement de vos pages.

En résumé, en désactivant les émojis de WordPress, vous supprimez des ressources inutiles. Et vous supprimez aussi la requête vers le site : https://s.w.org/ pour le chargement des Twemoji dans WordPress. Et hop, une requête externe de moins.

Ainsi, le fait d'avoir moins de ressources à charger rendra vos pages plus rapides à charger. CQFD !

Est-il possible d'afficher des émojis sur un site sans l'aide du CSS et du script de WordPress ?

La réponse est oui bien sûr.

En effet, le fait de désactiver les émojis de WordPress ne veut pas dire que vous ne pourrez plus utiliser d'émojis sur votre site. C'est juste que vous allez supprimer le code utilisé par WordPress pour la rétrocompatibilité des émojis dans les navigateurs très anciens. Et par là même, vous stopperez aussi le chargement des Twemoji.

Il faut savoir que de nos jours, la plupart des navigateurs prennent en charge nativement les émojis.

En désactivant la fonctionnalité de prise en charge des émojis de WordPress, les émojis s'afficheront donc tout de même. Mais, ils apparaîtront dans le style d'origine du système d'exploitation de l'utilisateur.

Ainsi, les utilisateurs iOS verront les designs iOS et les utilisateurs Android verront les designs du fabricant de leur appareil...

Pour savoir quels navigateurs prennent en charge les émojis et aussi à quoi ils ressemblent sur un appareil en particulier, rendez vous sur Can I Emoji?.

Et puis, pour insérer des émojis dans WordPress, faites-le simplement depuis votre PC ou un site dédié.

Comment désactiver les émojis de WordPress ?

WordPress ne fournit aucun moyen de les désactiver, alors, vous allez devoir procéder autrement. Après, il faut reconnaitre que ce ne sont les solutions qui manquent. En effet, il existe non pas une, mais plusieurs façons de désactiver les émojis WordPress.

A l'aide d'extensions

Pour désactiver les émojis de WordPress, vous pouvez utiliser une extension dédiée. Vous pouvez également les désactiver via votre thème ou une extension déjà présente sur votre site qui inclue cette fonctionnalité.

Avec votre thème ou les extensions présentes sur votre site

Selon le thème WordPress que vous utilisez, il se peut qu'il y ait déjà cette possibilité. Bien souvent, elle se trouve sous l'onglet "Performance" du thème dans la personnalisation. Alors, pensez à vérifier ! 😉

Par exemple, avec le thème OceanWP, il suffit de vous rendre sous Apparence > Personnaliser > Performance.

Désactiver les émojis avec le thème OceanWP

Après, la plupart des extensions d'optimisation des performances proposent aussi cette fonction parmi leur suite d'outils comme LiteSpeed Cache, WP Fastest Cache, Autoptimize... Il suffit de l'activer.

Retirer les émojis de WordPress avec les extensions d'optimisation de la performance

De la même facon, vous pouvez désactiver les émojis et aussi plein d'autres fonctionnalités inutiles avec l'extension WPMasterToolKit (WPMTK) – All in one plugin.

Désactiver les émojis avec WPMasterToolKit (WPMTK) – All in one plugin

Enfin, si vous utilisez Yoast SEO, là encore, vous pouvez retirer le JavaScript utilisé par WordPress pour convertir les caractères émojis dans les navigateurs obsolètes. Pour ce faire, allez dans les réglages de Yoast < Avancé et activez l'interrupteur.

retirer les scripts d'emoji avec Yoast SEO

Avec l'extension dédiée Disable Emojis

Disable Emojis, extension WordPress pour désactiver les émojis

Disable Emojis (GDPR friendly) est une extension dédiée à la désactivation des émojis de WordPress. Elle est légère et ne ralentira pas votre site.

Pour l'installer, allez dans Extensions > Ajouter une extension. Ensuite, faites une recherche avec le mot-clé "disable emojis". Puis, installez et activez le plugin.

C'est fini ! Disable Emojis supprime désormais automatiquement les scripts d'émojis chargés inutilement.

Méthode manuelle

Si vous ne voulez pas avoir à installer une énième extension, je vous suggère la méthode manuelle.

Pour ce faire, ajoutez le code ci-dessous dans le fichier functions.php de votre thème enfant. Et si vous n'en avez pas, utilisez une extension de code telle que Code Snippets ou encore le module Code snippets de WPMasterToolKit.

Ce code vous permet de désactiver toutes les fonctionnalités liées aux émojis de WordPress ainsi que la requête vers https://s.w.org.

(Source : Code de l'extension Disable Emojis (GDPR friendly) au 16/02/2025, Version: 1.7.7, Auteur: Ryan Hellyer)

/**
 * Disable the emojis.
 */
function disable_emojis() {
	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_emojis_tinymce' );
	add_filter( 'wp_resource_hints', 'disable_emojis_remove_dns_prefetch', 10, 2 );
}
add_action( 'init', 'disable_emojis' );

/**
 * Filter function used to remove the tinymce emoji plugin.
 * 
 */
function disable_emojis_tinymce( $plugins ) {
	if ( is_array( $plugins ) ) {
		return array_diff( $plugins, array( 'wpemoji' ) );
	}

	return array();
}

/**
 * Remove emoji CDN hostname from DNS prefetching hints.
 *
 * @param  array  $urls          URLs to print for resource hints.
 * @param  string $relation_type The relation type the URLs are printed for.
 * @return array                 Difference betwen the two arrays.
 */
function disable_emojis_remove_dns_prefetch( $urls, $relation_type ) {

	if ( 'dns-prefetch' == $relation_type ) {

		// Strip out any URLs referencing the WordPress.org emoji location
		$emoji_svg_url_bit = 'https://s.w.org/images/core/emoji/';
		foreach ( $urls as $key => $url ) {
			if ( strpos( $url, $emoji_svg_url_bit ) !== false ) {
				unset( $urls[$key] );
			}
		}

	}

	return $urls;
}

WordPress et la performance du site

Pour conclure, désactiver les émojis de WordPress permet d'éliminer non seulement le fichier JavaScript wp-emoji-release.min.js, mais aussi du CSS et l'appel à une requête HTTP externe. Bien sûr, il s'agit d'une optimisation minime.

Mais, rappelez-vous que pour optimiser la performance de votre site, chaque fraction de seconde économisée compte.

En effet, optimiser le temps de chargement des pages d'un site WordPress commence toujours par un travail d'analyse pour découvrir tout ce qui peut être supprimé ou corrigé.

Alors, mon conseil du jour est : Pensez à effectuer des tests de performances de votre site régulièrement afin de voir ce que vous devez améliorer.

Soumettre un commentaire 💬

guest
0 Commentaires
Commentaires en ligne
Afficher tous les commentaires