//for Regular Price
UPDATE wp_postmeta
SET meta_value = diff_price_value
WHERE post_id = variation_id AND meta_key = '_regular_price';
//for Price
UPDATE wp_postmeta
SET meta_value = price_value
WHERE post_id = variation_id AND meta_key = '_price';
//for Sale Price
UPDATE wp_postmeta
SET meta_value = price_value
WHERE post_id = variation_id AND meta_key = '_sale_price';
追加 上記のすべてのクエリを1つのクエリにマージする場合は、次のクエリを使用できます。
UPDATE wp_postmeta
SET meta_value = CASE
WHEN meta_key = "_regular_price" THEN diff_price_value
WHEN meta_key = "_price" THEN price_value
WHEN meta_key = "_sale_price" THEN price_value
ELSE meta_key
END
WHERE post_id = variation_id
AND meta_key IN ("_regular_price", "_price", "_sale_price");
また、wp_options
に保存されているWooCommerce製品の価格キャッシュを削除する必要があります _transient_timeout_wc_var_prices_{{post_id}}
の下のテーブル および_transient_wc_var_prices_{{post_id}}
option_name
で
DELETE
FROM `wp_options`
WHERE (`option_name` LIKE '_transient_wc_var_prices_%'
OR `option_name` LIKE '_transient_timeout_wc_var_prices_%')
上記のクエリはすべてテストされ、機能しました。
このクエリを実行する前に、データベースのバックアップを作成してください
参照: WooCommerce製品のセール価格を通常価格にコピーし、セール価格をリセット
これがお役に立てば幸いです!