• Beb

    (@darthbebeth)


    Just tested this on my staging site. Emojis are all still there. Double-checked here to confirm nothing else was required after activation to remove emojis. Sad.

    This code works if you add it to the end of your Functions.php file:

    // Disable emojis in WordPress
    function disable_emoji_feature()
    {
      // Prevent Emoji from loading on the front-end
      remove_action('wp_head', 'print_emoji_detection_script', 7);
      remove_action('wp_print_styles', 'print_emoji_styles');
    
      // Remove from admin area also
      remove_action('admin_print_scripts', 'print_emoji_detection_script');
      remove_action('admin_print_styles', 'print_emoji_styles');
    
      // Remove from RSS feeds also
      remove_filter('the_content_feed', 'wp_staticize_emoji');
      remove_filter('comment_text_rss', 'wp_staticize_emoji');
    
      // Remove from Embeds
      remove_filter('embed_head', 'print_emoji_detection_script');
    
      // Remove from emails
      remove_filter('wp_mail', 'wp_staticize_emoji_for_email');
    
      // Disable from TinyMCE editor. Currently disabled in block editor by default
      add_filter('tiny_mce_plugins', 'disable_emojis_tinymce');
    
      /** Finally, prevent character conversion too
       ** without this, emojis still work
       ** if it is available on the user's device
       */
    
      add_filter('option_use_smilies', '__return_false');
    }
    
    // Disables emojis in WYSIWYG editor
    function disable_emojis_tinymce($plugins)
    {
      if (is_array($plugins)) {
        $plugins = array_diff($plugins, array('wpemoji'));
      }
      return $plugins;
    }
    add_action('init', 'disable_emoji_feature');

    }

    • This topic was modified 3 years, 1 month ago by Beb.
  • The topic ‘Doesn’t work’ is closed to new replies.