使用add_bundle_to_order()将Product Bundle和变量子项添加到Order / Cart

时间:2017-07-23 22:34:05

标签: php wordpress woocommerce

我正在尝试将一个产品包添加到订单(或购物车,add_bundle_to_cart使用相同的args)。 Bundle有几种儿童产品,所有产品都有变化。我需要根据documentation提供的参数是:

$args = array(
    81 => array(
        'product_id' => 1543,
        'quantity' => 3,
    ),
    84 => array(
        'product_id' => 1386,
        'quantity' => 1,
        'variation_id' => 3535,
        'attributes' => array(
            'attribute_pa_attribute-1' => 'value-1b',
            'attribute_pa_attribute-2' => 'value-2b',
        ),

    )
);

第二捆绑产品(84)是可变产品。 我的问题:我无法验证我为'attributes'数组提供的值是否正确。

我的属性名为'Servings',有两个选项 - '2 People'和'4 People'。我不知道如何格式化属性名称来替换'attribute_pa_attribute-1'。我尝试了'服务','attribute_pa_servings'等。如果我返回产品的变体信息,它会给我:'attribute_servings'作为名称,'2 People'作为值。但这似乎也不起作用。

我没有收到debug.log中返回的任何错误,我找不到任何人在谷歌中使用它的例子。

如果有人对此有任何经验,我会非常感谢我的错误。

非常感谢。

1 个答案:

答案 0 :(得分:0)

我开始意识到有两种不同类型的属性'在Woo中:全局属性(跨所有产品)和本地属性(特定于一个产品)。文档中引用的指令是指如何引用全局属性 - 我使用的是本地属性。这就是为什么这些条款没有效果。

概述here。 有关两个here之间语法的信息。