Emoji Settings


Quickly enable or disable emojis conversion with an option.

When you disable the option, Emoji Settings stops the conversion of ASCII smilies like :) and :D to images on any WordPress installation. This plugin also prevents changing real emojis to Twemoji (Twitter) images. It achieves this by removing several default WordPress scripts.

You can find the option at “Settings > Writing” (/wp-admin/options-writing.php).

This plugin does not prevent real emojis (inserted via an emoji keyboard) from being stored and outputted on your website.

Emoji conversion enabled by default

I wrote this plugin with a WordPress.com-like environment in mind, giving users an option without overriding standard WordPress behavior.

You can change this behavior via filter cw_emoji_overrides. Refer to the code for instructions.

Does more than “Disable Emojis”

Emoji Settings also fixes Character Encoding issues on sites originally installed with WP 4.2 or lower. And this plugin correctly removes the conversion of emojis in the admin area, for example, from post titles.


You can contribute by translating Emoji Settings via the sidebar on this page.


  1. Install Emoji Settings either via the WordPress.org plugin directory or by uploading the files to your server.
  2. Either Network Activate this plugin or activate it on a single site.
  3. You can now disable emojis through the admin menu under wp-admin/options-writing.php.
  4. That’s it! Enjoy!


How do I disable emojis by default

You can implement this filter to achieve that:

add_filter( 'cw_emoji_overrides', function( $overrides ) {
    $overrides['default'] = '0'; // Set disabled by default.
    return $overrides;
} );


2022 年 8 月 29 日
I tried another plugin that has more than 70k installation, but it didn’t work for some reason it was converting the emoji to svg, but this plugin solved my problem smoothly, thank you
2021 年 5 月 16 日
Finally a plugin that really works with 5.7.2 😀 Thank you!
2018 年 12 月 28 日
i had problems, that some smileys were shown as broken characters, after i’ve deactivated emoticons in general via functions.php. this plugin fixes the issue, all smileys are now shown as they should, as plain text. perfect 🙂
2017 年 2 月 6 日
In IE11, my page stopped loading at the WP emoji settings script. Installing this plugin and disabling emojis solved my problem. Thanks.
2016 年 12 月 30 日
This is the perfect replacement to the “Disable Emojis” plugin that stopped disabling the emojis altogether… thank you!!! 😀
閱讀全部 11 則使用者評論


以下人員參與了開源軟體〈Emoji Settings〉的開發相關工作。


〈Emoji Settings〉外掛目前已有 9 個本地化語言版本。 感謝全部譯者為這個外掛做出的貢獻。

將〈Emoji Settings〉外掛本地化為台灣繁體中文版


任何人均可瀏覽程式碼、查看 SVN 存放庫,或透過 RSS 訂閱開發記錄



  • Rewritten for improved performance.
  • Now requires PHP 7.2 or later.
  • Now requires WP 5.5 or later because it adds tests against PHP support.
  • All function and class names have changed due to added namespacing, hence the major version bump.
  • Added filter cw_emoji_overrides, accepts array [ 'default' => string 1|0, 'force_support' => ?bool ].
  • Removed confusing filter the_emoji_options.
  • Changed the option label from “Enable emoji support” to “Enable emoji conversion”: this plugin prevents the conversion; it does not prevent actual emojis from being stored and printed.


  • Now properly removes the detection script and styles from all admin screens.
  • Now requires PHP 5.6 or later.
  • Tested up to WP 6.0.


  • Tested up to WP 4.9.


  • Fixed: When the_emoji_options filter was incorrectly used, a PHP notice would be cast on every page load.
  • Fixed: Updated license links in readme and included license file.
  • Fixed: Readme typos.


  • Improved: Overall sanitation (WordPress.com VIP standards).
  • Changed: The class loader function caches the filter within as well.
  • Updated: POT file.
  • Removed: Dutch translation files; these are now provided through WordPress.org.
  • Other: Cleaned up code.
  • Note: Plugin license is upgraded from GPLv2+ to GPLv3.


  • Improved: (performance) Saving Writing Settings no longer casts the Emoji Setting to an 1 or 0 string when it’s already an 1 or 0 string.
  • Improved: (performance) Removed boolean type casting on a boolean if statement.
  • Other: This plugin’s description on the activation page is much shorter.


  • Note: With more than 1000 hours of extra PHP programming experience, I’ve updated this plugin to the latest WordPress and PHP coding standards.
  • Added: WordPress.org translation compatibility.
  • Added: Local PHP option caching.
  • Added: Class caching.
  • Added: New filter. See “Other Notes” on this plugin’s homepage.
  • Added: POT translation file.
  • Changed: Plugin translation domain.
  • Updated: Translation files.
  • Improved: The defaults filter is now always cast to an array.
  • Improved: Reduced plugin memory footprint.
  • Cleaned up code.


  • Fixed: PHP Warning when saving options on old WP installations.
  • Changed: Improved plugin efficiency.
  • Tested up to WP 4.4.0


  • Fixed: New WordPress installations (4.3 and up) don’t have the option to turn off smileys. Those before now have incorrect character encoding of smiley abbreviations, like 🙂 and :D, when emojis are disabled. So, when you disable emojis, smilies will also be disabled.
  • Improved: When disabling emojis, the smilies setting will also be disabled to reflect the workings of this plugin visually.


  • This plugin now supports PHP 5.2 and up.


  • Now correctly removes scripts from admin pages.


  • Fixed option call priority.


  • Fixed HTML on the options page.
  • Added filter the_emoji_options.


  • Initial Release