WP-All使用原始数据导入add_post钩子

时间:2017-03-08 10:21:50

标签: php wordpress wpallimport

我使用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 |
+----+--------------+---------+---------+------------------------+------------+

1 个答案:

答案 0 :(得分:0)

刚刚找到另一个解决方案:

通过导入,我将折扣组添加到自定义字段,并使用钩子和get_post_meta以及wpdb->insert()函数在正确的位置添加正确的值。