You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用wp_deregister_script后如何恢复WordPress核心jQuery功能?

恢复WordPress核心jQuery正常功能的解决方案

你之前的代码问题在于完全禁用了产品分类和商店页面的jQuery(把jquery脚本注册为false),而绝大多数WordPress插件都依赖jQuery运行,这直接导致了插件失效。下面是具体的修复步骤:


第一步:移除错误代码

首先,把你之前添加的这段问题代码彻底删除,它是导致插件失效的根源:

add_filter('wp_enqueue_scripts', 'change_default_jquery', PHP_INT_MAX);
if (is_product_category() || is_shop()) {
    // 产品分类页面或商店
    function change_default_jquery() {
        if (!is_admin()) {
            wp_deregister_script('jquery');
            wp_register_script('jquery', false);
        }
    }
}

第二步:恢复核心jQuery加载

添加以下代码到你的主题functions.php文件(或自定义插件中),确保WordPress核心jQuery被正确注册和加载:

function restore_core_jquery() {
    // 后台不需要处理,直接返回
    if (is_admin()) {
        return;
    }

    // 清除之前错误的注册设置
    wp_deregister_script('jquery');
    
    // 重新注册WordPress自带的核心jQuery文件
    wp_register_script(
        'jquery',
        includes_url('/js/jquery/jquery.min.js'), // 使用WP内置的jQuery路径
        array(), // 无依赖
        false, // 使用WP核心的版本号
        true // 设置为在页脚加载,优化页面性能
    );
    
    // 加载jQuery
    wp_enqueue_script('jquery');
}
add_action('wp_enqueue_scripts', 'restore_core_jquery', PHP_INT_MAX);

(可选)如果你想优化jQuery加载而非完全禁用

如果你最初的需求是阻止页面加载多个重复的jQuery脚本,而不是完全禁用,可以用更温和的方式:只保留WordPress核心的jQuery,避免重复加载。代码如下:

function optimize_jquery_loading() {
    // 仅在产品分类和商店页面执行
    if (!is_product_category() && !is_shop()) {
        return;
    }

    if (is_admin()) {
        return;
    }

    // 移除所有已注册的jQuery实例
    wp_deregister_script('jquery');
    
    // 重新注册核心jQuery,确保只有这一个版本加载
    wp_register_script(
        'jquery',
        includes_url('/js/jquery/jquery.min.js'),
        array(),
        false,
        true
    );
    wp_enqueue_script('jquery');
}
add_action('wp_enqueue_scripts', 'optimize_jquery_loading', PHP_INT_MAX);

这种方式既解决了多jQuery加载的问题,又不会破坏依赖jQuery的插件功能。


最后一步:测试生效

添加代码后,清除你的WordPress缓存(包括插件缓存、CDN缓存),然后访问产品分类/商店页面,测试插件功能是否恢复正常。

内容的提问来源于stack exchange,提问作者user2974907

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 11:29:58