禁用 emoji 时,后台不能禁用问题的解决

admin 2023年3月9日 代码修改 95

在写第 10 个插件:wp-first 时,发现在 init 时处理下面的代码,后台不会有效果。

remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
remove_action( 'admin_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' );

原因就是后台在 init 的时候,emoji 的 js 和 css 还没加上,所以这里移除不起作用,应该在 admin_init 的时候做移除动作。

要加个判断就可以了:

 if(is_admin()){
    add_action( 'admin_init', 'disable_emojis');
}else{
    add_action( 'init', 'disable_emojis');
}

在后台的时候,用 admin_init 处理,网上很多方法都是过期的,可能针对早期的版本有效,请注意识别。

真诚赞赏,手留余香

联系我们

  • dps2088168 复制

产品推荐

热门标签