Categories
Code

Remove Emoji Support in WordPress 4.2+

Did anyone actually ask around before making this “feature” mandatory? Let’s get rid of this crap…

Option 1

Install Ryan Hellyer’s “Disable Emojis” plugin.

Option 2

Custom code. Place following into functions.php

<?php
//* Do NOT include the opening php tag shown above. Copy the code shown below into functions.php

/**
 * Remove emoji support.
 */
function grd_remove_emoji() {
	remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
	remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
	remove_action( 'admin_print_styles', 'print_emoji_styles' );
	remove_action( 'wp_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' );

	// Remove from TinyMCE
	add_filter( 'tiny_mce_plugins', 'grd_remove_tinymce_emoji' );
}
add_action( 'init', 'grd_remove_emoji' );

/**
 * Filter out the tinymce emoji plugin.
 */
function grd_remove_tinymce_emoji( $plugins ) {

	if ( ! is_array( $plugins ) ) {
		return array();
	}

	return array_diff( $plugins, array( 'wpemoji' ) );
}

By Greg Rickaby

Director of Engineering @WebDevStudios / Author & Editor @Wiley

6 replies on “Remove Emoji Support in WordPress 4.2+”

Yeah, the source code is pretty horrible. I was a little surprised when I saw it appear in my source. Thankfully it wasn’t too hard to get rid of.

Thanks for posting… emoji arrows were wrecking havoc on some html arrows in my slideshow carousel.

Replacing html with images is insane.

But what’s worse is not having an on off toggle in settings.

Just imagine what environmentalists would say if they found out how much electricity was being wasted by server CPU’s processing WordPress emoticons that weren’t really needed to begin with.

Leave a Reply to Aan Cancel reply