当前位置: 首页 > 知识库问答 >
问题:

woocommerce:为产品属性增加价值

阎元徽
2023-03-14

如何通过代码为woocommerce属性添加值?我已经创建了一个名为“Dispatch time”(分类法:pa_Dispatch)的属性,现在我想为特定产品的Dispatch属性添加值。

如何通过编程实现这一点?

共有2个答案

隆选
2023-03-14

不能向属性添加值。您需要创建产品变量,创建一个变体,并用属性分配它。在这个变体中,您可以分配一个值。

读取模式:

  1. http://docs.woothemes.com/document/product-variations/
  2. http://www.youtube.com/watch?v=7PX8MWBOAeo

编辑:

在进一步澄清这个问题后,这里有一个更新的解决方案。

将以下函数添加到您的函数中。php。在适当的钩子上调用它,并传递产品ID和属性值。

function se19519561_set_attributes($post_id, $attributes) {

    //Type attribute
    $product_attributes['type'] = array(
        //Make sure the 'name' is same as you have the attribute
        'name' => htmlspecialchars(stripslashes('Dispatch Time')),
        'value' => $attributes,
        'position' => 1,
        'is_visible' => 1,
        'is_variation' => 1,
        'is_taxonomy' => 0
    );

//Add as post meta
update_post_meta($post_id, '_product_attributes', $product_attributes);

}

希望这能有所帮助!

宇文育
2023-03-14

我找到了答案,你需要使用wp_set_object_terms来设置分类法中object的术语,

wp_set_object_terms( $object_id, $terms, $taxonomy, $append);

其中,$append可以是truefalse,如果为true,标签将附加到现有标签上,如果为false,标签将被替换。

在我的例子中,

wp_set_object_terms( $object_id, '2 Business Days', 'pa_dispatch' , false);

在这里,pa_dispatch是woo商务分类法。

 类似资料:
  • 我正在以编程方式创建属性变体(变量产品)。我见过的所有东西都很容易做到这一点,但是值就是不显示出来。下面是我的代码: null 我已经尝试了所有的方法:将上面的值设置为术语slugs的数组,ID的数组,ID或slug/VALUE的简单字符串。什么都不管用。我还跟踪了这些stackoverflow问题: WooCommerce:向产品属性添加值br>创建WooCommerce产品变体添加空属性值br

  • 我正在使用此代码添加自定义属性 这个代码的结果我得到了添加只是产品属性名称没有术语值... 我找了很多,但没有得到任何答案。

  • 我正在尝试向现有的WooCommerce产品添加一个具有多个值的新属性。 这是我正在使用的代码。我把它简化了一点,使它更清楚。 该属性显示在产品的属性列表中。然而,条款没有添加。 数据库中也有这些术语: 我做错了什么?我做了很多研究,读了一些其他的问题,但它们对我没有帮助。 在WooCommerce中以编程方式创建新产品属性

  • 第一件事:这是我在stackoverflow上发布的第一个问题。换句话说,这是我在你们的帮助下无法独自解决的第一个问题(非常感谢你们,你们让世界运转起来!)。 我的问题与@LoictheAztec对另一个问题的回答有关(我原本计划在那篇文章的评论中发布我的问题,但由于我是/曾经是潜伏者,我缺乏这样做的声誉):https://stackoverflow.com/a/47766413/13263330

  • 在WooCommerce中,我试图使用以下代码将产品类别转换为产品属性: Is的部分工作原理与我在后端产品中需要看到的一样

  • 当我试图获得所有产品属性时,它们没有任何值。 回应- 阵列([pa_品牌]= 但它在后端显示值