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

扩展WooCommerce的WC_Coupon类触发“类未找到”错误求助

解决WC_Coupon类找不到的问题

你遇到的Class 'WC_Coupon' not found错误,根本原因不是需要“导入”WooCommerce,而是你的代码加载时机太早——在WooCommerce核心类还没被初始化的时候,就尝试继承WC_Coupon了。第三方插件没问题,是因为它们的代码是在WooCommerce加载完成后才执行的。

解决方法很简单,把你的类定义代码挂到WooCommerce的初始化钩子上:

add_action('woocommerce_loaded', function() {
    class Email_Coupon extends \WC_Coupon 
    {
        // 在这里添加你的自定义方法或属性
    }
});

或者也可以用plugins_loaded钩子,但要注意设置合适的优先级(确保晚于WooCommerce的加载优先级):

add_action('plugins_loaded', function() {
    class Email_Coupon extends \WC_Coupon 
    {
        // 自定义内容
    }
}, 20); // 优先级设为20,比默认的10高,确保WooCommerce先加载

另外,如果你是通过单独文件引入这个类,不要在插件主文件的顶部直接require或include,而是把引入操作也放到上述钩子的回调里,确保WooCommerce加载完成后再引入你的类文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 16:32:33