wc_update_220_variations() WC 1.0
Update variations for 2.2
No Hooks.
Return
null.
Usage
wc_update_220_variations();
Code of wc_update_220_variations() wc update 220 variations WC 5.0.0
function wc_update_220_variations() {
global $wpdb;
// Update variations which manage stock.
$update_variations = $wpdb->get_results(
"SELECT DISTINCT posts.ID AS variation_id, posts.post_parent AS variation_parent FROM {$wpdb->posts} as posts
LEFT OUTER JOIN {$wpdb->postmeta} AS postmeta ON posts.ID = postmeta.post_id AND postmeta.meta_key = '_stock'
LEFT OUTER JOIN {$wpdb->postmeta} as postmeta2 ON posts.ID = postmeta2.post_id AND postmeta2.meta_key = '_manage_stock'
WHERE posts.post_type = 'product_variation'
AND postmeta.meta_value IS NOT NULL
AND postmeta.meta_value != ''
AND postmeta2.meta_value IS NULL"
);
foreach ( $update_variations as $variation ) {
$parent_backorders = get_post_meta( $variation->variation_parent, '_backorders', true );
add_post_meta( $variation->variation_id, '_manage_stock', 'yes', true );
add_post_meta( $variation->variation_id, '_backorders', $parent_backorders ? $parent_backorders : 'no', true );
}
}