首页 文章

自定义字段值,以取代Woocommerce 3中的产品价格

提问于
浏览
1

我有一个名为super_sale_price的新自定义字段,我正在尝试为每个产品使用该值,因此如果此自定义字段值存在,那么我们将在该产品的每个位置显示此值,

我用它来显示那个价格,

function return_custom_price($price, $product) {
    global $post, $blog_id;

     $price = get_post_meta($post->ID, 'super_sale_price', true);


    return $price;
}
add_filter('woocommerce_get_price', 'return_custom_price', 10, 2);

这会改变单个产品页面中的值,但是一旦我将此产品添加到购物车,价格显示为0.请有人告诉我为什么会发生这种情况?这是一个错误的钩子吗?

1 回答

  • 0

    您正在使用的挂钩已弃用,请改为尝试此操作:

    add_filter('woocommerce_product_get_price', 'display_super_sale_price', 10, 2); 
    function display_super_sale_price( $price, $product ) {
        if( $product->get_meta('super_sale_price') );
            $price = $product->get_meta('super_sale_price');
    
        return $price;
    }
    

    代码位于活动子主题(或活动主题)的function.php文件中 . 它应该工作 .

    对于可变产品和产品变体,请参阅此答案主题:

相关问题