【问题标题】:Woocommerce - product prices depending on delivery methodWoocommerce - 产品价格取决于交付方式
【发布时间】:2017-01-15 19:34:34
【问题描述】:

我正在开发一个基于 Woocommerce 的餐厅网站 - 客户对他的产品有不同的价格 - 一种是送货的价格,一种是坐着的价格。

客户可以订购产品并送货上门,也可以通过订购产品在餐厅预订餐桌,并在结帐部分选择预订餐桌选项。

那么 - 我是否可以为一种产品设置 2 个价格,然后根据交付方式应用其中一个?

变化不是一个好主意 - 因为我不能在购物车中同时拥有一种坐姿产品和一种用于餐桌预订的产品。

【问题讨论】:

  • 最简单的方法是将“交付方法”设为attribute of the product。属性可以改变产品的价格。
  • 是的,但我不希望用户能够从送货和预订中选择产品——这会弄乱整个流程。
  • 在这种情况下,为什么不使用“Shipping”方法呢?
  • 你能说得更具体些吗?
  • 我想您可以在元框中添加一个字段以获取“交货”价格。并使用默认价格作为“堂食”价格。 (或相反亦然)。您可以在模板中的某处显示此附加字段。然后,当您设置交付方式(可能作为运输方式)时,您可以更改购物车价格。

标签: php wordpress woocommerce


【解决方案1】:

检查下面的代码,它可能会让您了解满足您的要求。

add_action( 'woocommerce_before_calculate_totals', 'add_custom_price' );
    function add_custom_price( $cart_object ) {   
        foreach ( $cart_object->cart_contents as $key => $value ) {   
            $productId = $value['data']->id;
            if ( check delivered product) {
            {
                // product to be delivered              
                $value['data']->price = $value['data']->price + $your_custom_price;
            }
            else{
                //book table
                $value['data']->price = $value['data']->price;
            }
        }
    }
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-19
    • 2021-04-29
    • 1970-01-01
    • 1970-01-01
    • 2019-12-25
    • 2021-08-01
    • 1970-01-01
    • 2016-05-08
    相关资源
    最近更新 更多