WordPress禁用Emoji表情功能(最全代码):移除wp-emoji-release.min.js提升速度

为什么要禁用 Emoji?

结论先说:大多数企业站、外贸站、产品站不需要 WordPress 自带的 Emoji 兼容脚本。它会在前台加载 wp-emoji-release.min.js(以及一些相关处理),对这类站点来说通常属于“稳定增加请求,几乎不带来收益”。如果你追求更干净的前端输出、更少的 HTTP 请求、更低的渲染负担,禁用它是性价比很高的优化项。

怎么做更稳?先选“禁用力度”

Emoji 相关功能主要分三块:前台/后台的检测脚本与样式、邮件与 RSS 的静态化处理、编辑器(TinyMCE)里的 Emoji 插件。对大多数站点来说,禁用前台输出就够了;如果你还想更彻底,就把邮件、RSS、编辑器也一并处理。

做什么:3 套方案直接用

方案1(推荐):完整禁用 Emoji(前台 + 后台 + 编辑器 + DNS 预解析)

把下面代码加入主题 functions.php 或自定义功能插件:

add_action('init', function () {
    // 前台与后台:移除 Emoji 检测脚本与样式
    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');

    // 邮件与 RSS:移除 Emoji 静态化相关过滤
    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');

    // 编辑器(TinyMCE):移除 Emoji 插件
    add_filter('tiny_mce_plugins', function ($plugins) {
        if (is_array($plugins)) {
            return array_diff($plugins, array('wpemoji'));
        }
        return array();
    });

    // 移除 DNS Prefetch://s.w.org/images/core/emoji/...
    add_filter('wp_resource_hints', function ($urls, $relation_type) {
        if ($relation_type === 'dns-prefetch') {
            $urls = array_diff($urls, array('https://s.w.org'));
        }
        return $urls;
    }, 10, 2);
});

这套是最常用、最“关得干净”的版本。对于不靠内容互动吃饭的企业站来说,基本不会带来副作用。

方案2:只禁用前台 Emoji(保守做法,风险最低)

如果你担心后台编辑器或某些插件依赖(虽然很少见),只处理前台即可:

add_action('init', function () {
    remove_action('wp_head', 'print_emoji_detection_script', 7);
    remove_action('wp_print_styles', 'print_emoji_styles');
});

这能立刻减少前台输出与请求,适合你只想“先拿到收益”的情况。

方案3:用插件做(不推荐,但有些人就爱这样)

如果你不想动代码,也可以用性能优化类插件关闭 Emoji。缺点也很现实:为了关一个小功能,多引入一个插件和潜在兼容成本,长期维护并不划算。企业站/外贸站更建议直接用方案1或2写进功能插件里,交付后也更稳定。

如何验证是否生效

打开前台页面源码或用浏览器 Network 面板,确认不再加载 wp-emoji-release.min.js,同时页面 head 中不再出现 Emoji 相关输出。如果你还移除了资源提示,通常也不会再看到指向 s.w.org 的 Emoji 预解析。

总结

WordPress 的 Emoji 支持对内容社区型网站有意义,但对大多数企业站、外贸站来说就是纯成本。优先用方案1一次性禁干净;如果你更保守,方案2也能立刻见效。别把这种基础优化交给一堆插件去“代劳”,服务器会少受点罪,你也少背点锅。

滚动至顶部