gpt4 book ai didi

php - 来自外部来源的 Woocommerce 更新价格

转载 作者:可可西里 更新时间:2023-10-31 23:45:08 26 4
gpt4 key购买 nike

我对从外部数据库更新产品价格有疑问。我需要在每次访问此职位时检查产品价格。为此,我使用了 the_post 钩子(Hook)。例如,我得到了单个产品的“1718”价格值。

function chd_the_post_action( $post ) {
if ( $post && $post->post_type == 'product' ) {
$product = wc_get_product( $post->ID );
if ( $product ) {
$price = '1718';
$product->set_price( "$price" );
$product->set_regular_price( "$price" );
$product->set_sale_price( "$price" );
$product->save();
}
}
}

此代码更新数据库中的产品价格,但它不会同时更改页面上的价格 View ,而是仅在页面重新加载后才更改,因为帖子和产品变量是由 setup_postdata() 设置的。因此我使用 woocommerce hook 来显示更新的价格:

function chd_get_price_filter( $price, $item ) {
return '1718';
}
add_filter( 'woocommerce_product_get_price', 'chd_get_price_filter', 100, 2 );
add_filter( 'woocommerce_product_get_regular_price', 'chd_get_price_filter', 100, 2 );
add_filter( 'woocommerce_product_get_sale_price', 'chd_get_price_filter', 100, 2 );

有什么钩子(Hook)可以让我以更好的方式完成这个 Action 吗?

最佳答案

像这样使用 update_post_meta 函数更新产品价格

update_post_meta( $product->id, '_sale_price', '1718' );
update_post_meta( $product->id, '_regular_price', '1718 );

关于php - 来自外部来源的 Woocommerce 更新价格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45627910/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com