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

如何仅在移动端禁用WooCommerce Shoptimizer主题的滑动购物车

解决Shoptimizer主题移动端禁用滑动购物车抽屉但保留AJAX加购的方法

方法一:CSS媒体查询隐藏抽屉

通过CSS针对移动端屏幕尺寸隐藏滑动抽屉,同时保证AJAX加购的成功提示正常显示:

@media only screen and (max-width: 768px) {
    /* 隐藏滑动购物车抽屉 */
    .slide-cart {
        display: none !important;
    }
    /* 确保AJAX添加成功通知正常展示 */
    .woocommerce-message {
        display: block !important;
    }
}

将上述代码添加到外观 > 自定义 > 额外CSS面板中,768px为通用移动端断点,可根据需求调整数值。

方法二:自定义JS阻止移动端抽屉弹出

通过监听AJAX加购事件,在移动端条件下阻止抽屉弹出:

document.addEventListener('DOMContentLoaded', function() {
    // 监听商品添加至购物车的AJAX事件
    document.body.addEventListener('added_to_cart', function() {
        // 判断当前设备为移动端时关闭抽屉
        if (window.innerWidth <= 768) {
            const slideCart = document.querySelector('.slide-cart');
            if (slideCart && slideCart.classList.contains('active')) {
                slideCart.classList.remove('active');
            }
        }
    });
});

将这段代码添加到主题的自定义JS区域,或通过自定义JS插件注入页面。若需更精准控制,可找到主题的滑动购物车JS文件(通常为assets/js/slide-cart.js),在抽屉弹出逻辑前添加移动端判断(建议使用子主题修改,避免主题更新覆盖)。

方法三:PHP钩子控制(主题支持时优先使用)

如果Shoptimizer主题提供了滑动购物车启用状态的钩子,可通过子主题的functions.php添加代码,仅在移动端禁用抽屉:

add_filter('shoptimizer_slide_cart_enabled', 'disable_slide_cart_mobile');
function disable_slide_cart_mobile($enabled) {
    // 检测是否为移动设备
    if (wp_is_mobile()) {
        return false;
    }
    return $enabled;
}

此方法无需修改前端代码,兼容性更强,建议先确认主题文档中是否存在对应钩子。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 03:57:11