You’ll need to adjust your hook so it runs on wp
, not init
so that you can query what page you’re currently on. The code below gives you some examples of determining if you’re on the page(s) in questions.
function disable_emoji_feature() {
if ( is_page( 123 ) || is_page('the-page-slug' ) || is_page( array( 1, 2, 3 ) ) ) {
// 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' );
add_filter( 'option_use_smilies', '__return_false' );
}
}
add_action( 'wp', 'disable_emoji_feature' );