![](/img/trans.png)
[英]Update all WooCommerce products if “sale_price” is greater than “price”
[英]How to update price of all products in woocommerce?
我的商店里有近 1600 种产品。 我想把我店里的所有产品都涨到现在价格的两倍。 并想在价格翻倍后给所有产品25%的折扣。 一个一个地做其实是很漫长的。 有没有办法一次实现这一目标?
您需要一些方法来激活此功能:
function reduce_all_products_price() {
$products = wc_get_products(['limit' => -1]);
foreach($products as $product) {
$new_full_price = floatval($product->get_regular_price('edit')) * 2;
$product->set_price($new_full_price);
$product->set_sale_price($new_full_price * 0.75);
}
}
我使用“销售价格”来存储带有折扣的价值,因为我认为它更有意义。 有几种方法可以激活您的功能,但最简单的方法可能是向admin_init
添加挂钩并检查 URL 中的某些参数。
add_action('admin_init', function () {
if (isset($_GET['discount-everybody']) && $_GET['discount-everybody'] == 'true') {
reduce_all_products_price();
}
});
然后你必须登录到 wp-admin 并访问yoursite.com/wp-admin/index.php?discount-everybody=true
小心不要这样做两次。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.