Emoji characters were born in Japan in the late 90’s but took nearly a decade to break into global usage. They entered popular culture full force when select emoji character sets were incorporated into Unicode in 2010. Since that time, emoji popularity has grown, and there’s no denying that they are mainstream and here to stay.
The good news is that better support for emoji will soon find its way into WordPress core. Last week, core contributor Gary Pendergast, unveiled a roadmap for better emoji support and detailed the current state of the feature plugin.
Pendergast has spent quite a bit of time immersing himself in the history of emoji and the requirements for their support. Pendergast filled contributors in on the status of WordPress core support for emoji:
As of r31349, WordPress partially supports emoji. ~60% of WordPress sites are running MySQL 5.5 or later (so can be upgraded to store emoji), and ~40% of browsers natively support emoji. Emoji are a wildly popular method of communication, so we can expect them to be heavily used as soon as they’re available. The problem is, 60%/40% means a really bad experience for a huge number of our users, who’ll try to use emoji, and fail.
Getting more WordPress sites to run on MySQL 5.5+ would be no small task, so the emoji feature plugin is working around this by adding a wp_encode_emoji() function to turn emoji characters into HTML entities for sites using the utf8 character set. This gets the remaining ~40% of sites nearly all the way there.
The feature plugin proposes that WordPress adopt the Twemoji image set as a fallback for browsers that don’t display emoji natively, which reduces the extra load, especially for mobile browsers. Twitter open sourced its Twemoji 872 character image set last November, simultaneously partnering with Automattic to bring emoji to WordPress.com users.
Pendergast reports that the plugin is close to being finished, with only a handful of remaining bugs to discuss. The plugin has already been briefly reviewed by the accessibility team and requires only a few minor changes. The issue of where to host the images is still under discussion, and Pendergast and contributors are considering different options:
They’re currently hosted on WP.com’s CDN, but we’re investigating other options for where to host them, probably the W.org CDN. Given that the wp-admin Dashboard also loads things from Google, I have no problem with hosting them on an external CDN. There will naturally be a filter on the URL, to allow local hosting for sites that don’t want to use the CDN.
WordPress is on track to provide more comprehensive support for emoji in the near future. Pendergast says the project is on target for the upcoming 4.2 release.
In the meantime, if you’d like to add emoji support to your self-hosted WordPress site, WP Emoji One is a good option. The plugin was the first to bring support for the open source Emoji One character set to WordPress posts and pages.