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

WooCommerce:将自定义产品属性移动到分类法

卫琛
2023-03-14

在WooCommerce中,您可以通过两种方式向产品添加属性。

a.在Product-&>Attributes中创建一个属性,为它设置一个名称(即颜色),将它定义为选择字段还是文本字段。保存。

b.编辑产品切换到属性-选项卡,从下拉菜单中选择“颜色”,填写一些值。保存。

编辑产品,切换到属性选项卡,选择“添加自定义属性”,设置名称,填写一些值。保存。

在方法。1中,属性被保存并连接在三个表上。wp_terms,wp_term_taxonomies和wp_term_relationship

在方法2中,属性被序列化并保存在wp_postmeta中,'_product_attributes'作为meta_key。

我现在要做的是将存储在wp_postmeta表中的所有属性移动到wp_meta表中,并通过wp_term_taxonomies和WP_TERM_Relationship正确连接它们。

有什么解决方案或插件吗?

手动移动它们不是一个选择,因为它们有500多个。

干杯,

共有1个答案

百里杰
2023-03-14

有一个WooCommerce-REST-API允许我这样做。http://woothemes.github.io/woocommerce-rest-api-docs/

首先,我必须获取存储在wp_term_relathiroption中的所有属性的slug和名称(而不是它们的值)。既然就那么几个,我就记下来了。

    null

null

$product = [product => 
  [
  id => 123, 
  attributes => [
    [name => 'Color', 'slug' => 'pa_attr_color', options => ['red', 'blue']],
    [name => 'color', 'slug' => 'wrong_color', options => ['yellow', 'green']]
  ]]

我现在所要做的就是将选项从错误颜色移动到PA_ATTR_COLOR。如果没有pa_attr_color,那么我只需要创建一个。

 类似资料:
  • 我试图在woocommerce中获得一个特定的自定义属性。我在这个网站上读了很多文章,其中提供了3-5种方法。在尝试了所有方法之后,对我来说唯一有效的方法就是循环所有属性——所有其他属性都不起作用。我有一个名为“pdfs”的自定义属性 以下尝试不起作用:(链接) 这是唯一的一个工作:(链接) 我更希望能够使用第一个选项之一。任何帮助都将不胜感激。谢谢

  • 我在一个使用工具集类型生成“产品”帖子类型和“产品类别”分类法(产品类别)的网站上工作。现在我正在将WooCommerce添加到该站点,需要将“产品类别”分类设置为产品的WooCommerce分类,即Product_cat。WooCommerce已经选择了产品帖子类型,所有产品都出现在WooCommerce产品中。我只需要让分类也出现在那里。 我尝试使用一个名为Taxonomy Switcher的

  • 当我进入产品编辑页面时,有一个选项卡“属性”。在那里我可以设置属性名及其值。 我假设这就是在Woocommerce上为产品添加自定义属性的方式。 但是如何在循环中得到这个值呢? 我看到人们使用,但它希望我传递分类法和另一个参数数组。分类学是什么?我没有手动添加。论点是什么?

  • 我试图使用WooCommerce的分层导航属性过滤侧边栏小部件过滤WooCommerce商店中的〜30,000种产品。这需要使用预定义的产品属性分类法,而不是在每个产品的基础上使用自定义属性。 商店里的每种产品都有一个导入的定制“品牌”属性。在导入产品之前,我在wp-admin中创建了一个名为()的属性分类法。然而,进口产品没有将其品牌属性(和术语名称)添加到品牌()分类中。取而代之的是,所有的产

  • 问题内容: 在Woocommerce中,我试图获取产品自定义属性值,但我失败了,我一无所获。 所以我尝试了: 我正在获取这些原始数据: 我知道有一个值,因为它显示在属性部分,但是我只是找不到一种方法来将其显示在我的自定义代码中。 问题答案: 编辑* : 自Woocommerce版本3起已弃用 * 按照@datafeedr在他的答案中写道: 甚至更紧凑: 原始答案:

  • 在WooCommerce中,我试图获得产品自定义属性值,但我失败了,什么也得不到。 所以我试着: 我得到了这些原始数据: 我知道有一个值,因为它显示在属性部分,但我就是找不到一种方法用我的自定义代码显示它。