使用 WPDB 查询更新 Woocommerce 中的产品变体价格 [英] Update product variations prices in Woocommerce with WPDB query

查看:18
本文介绍了使用 WPDB 查询更新 Woocommerce 中的产品变体价格的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用的是 WordPress 4.7.4 和 WooCommerce 3.0.5.

I am using WordPress 4.7.4 and WooCommerce 3.0.5.

我使用meta_id更新了_sale_price_price_regular_price,代码如下:

I updated _sale_price, _price, _regular_price using meta_id with code below:

   $meta_tbl = $wpdb->prefix.'postmeta';
   foreach ($_POST['loop'] as $loop_k => $loop_v) {
        $wpdb->update(
            $meta_tbl,
                array( 'meta_value' => $loop_v['price'] ),
                array( 'meta_id' => $loop_v['price_meta_id'] ),
                array( '%d' )
            );
        $wpdb->update(
            $meta_tbl,
                array( 'meta_value' => $loop_v['regular_price'] ),
                array( 'meta_id' => $loop_v['regular_price_meta_id'] ),
                array( '%d' )
            );
        $wpdb->update(
            $meta_tbl,
                array( 'meta_value' => $loop_v['sale_price'] ),
                array( 'meta_id' => $loop_v['sale_price_meta_id'] ),
                array( '%d' )
            );
  }

但是商店页面仍然显示产品的旧价格!我怎样才能正确地做到这一点?

But still the shop page is displaying the old price of products! How can I do it properly?

推荐答案

尝试在代码后添加这一行.

Try by adding this line after your code.

wc_delete_product_transients( $post_id );

//$post_id 替换为产品 ID

// $post_id replace with product ID

这篇关于使用 WPDB 查询更新 Woocommerce 中的产品变体价格的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆