商品のすべてのバリエーションの特定のフィールドを更新しようとしていますが、残念ながらバリエーション ID を取得できません。
基本的に私がやっていることは、各バリエーションの在庫値を取得しようとしており、在庫値がゼロ未満の場合、特定のフィールドを特定の値で更新することです (以下のコードで説明されているように)。
カスタム投稿/バリエーションIDを手動で入力してこれをテストしましたが、正常に機能しており、在庫値に基づいて特定のバリエーションIDを更新しています。ここで立ち往生しているのは、バリエーション ID を単独で取得できないことだけです。
以下は私が使用しているコードです:
global $post, $woocommerce;
$post_id = $variation->ID;
// Get specific data from the certain custom fields using get_post_meta( $post_id, $key, $single );
$stock = get_post_meta( $post_id, '_stock', true );
if ($stock < 1) {
update_post_meta( $post_id, 'cuzd-prod-general-v', '20,25' );
} else {
update_post_meta( $post_id, 'cuzd-prod-general-v', '1,5' );
}
これのバリエーションIDを取得するのにどこが間違っているのかわかりません。