我使用WP-All Import和WooCommerce附件在WooCommerce中导入产品。在原始的xml中,我有3个不同用户角色的折扣类别。通过WooCommerce的插件客户特定定价(https://wisdmlabs.com/woocommerce-user-specific-pricing-extension/),我可以显示这些角色的不同价格。
此插件将其数据保存到单独的表(wp_wusp_role_pricing_mapping
),这意味着WP-All Import无法直接插入数据。
但是,WP All Import有一个钩子pmxi_saved_post
,每次保存或更新帖子时都会调用它。 (http://www.wpallimport.com/documentation/advanced/action-reference/)
在该函数中,我必须能够将记录插入到wusp_role_price_mapping表中,因为我需要post_id,但是,这就是我的问题:我还需要来自XML的原始数据,其中有单独的折扣规则可用。我可以在钩子动作中访问该数据吗?
为了您的信息,这是数据在xml中的外观,以及它必须如何保存在数据库中。
<Korting>
<KortingCategorie>EH Markt 71 %</KortingCategorie>
<Percentage>40</Percentage>
<Prijs>0,0000</Prijs>
<KortingCategorie>EH winkel 35%</KortingCategorie>
<Percentage>40</Percentage>
<Prijs>0,0000</Prijs>
<KortingCategorie>EH Winkel 45%</KortingCategorie>
<Percentage>40</Percentage>
<Prijs>0,0000</Prijs>
<KortingCategorie>EH Winkel 50%</KortingCategorie>
<Percentage>40</Percentage>
<Prijs>0,0000</Prijs>
</Korting>
如您所见,discountcategory / userrole(xml中的KortingCategorie
)的名称并不总是包含正确的折扣百分比,并且每个产品的折扣不同。
+----+--------------+---------+---------+------------------------+------------+
| id | role | price | min_qty | flat_or_discount_price | product_id |
+----+--------------+---------+---------+------------------------+------------+
| 1 | eh_winkel_50 | 40.0000 | 1 | 2 | 5445 |
| 2 | eh_winkel_45 | 40.0000 | 1 | 2 | 5445 |
| 3 | eh_markt | 40.0000 | 1 | 2 | 5445 |
+----+--------------+---------+---------+------------------------+------------+
答案 0 :(得分:0)
刚刚找到另一个解决方案:
通过导入,我将折扣组添加到自定义字段,并使用钩子和get_post_meta
以及wpdb->insert()
函数在正确的位置添加正确的值。