wc_update_300_grouped_products()
Update grouped products for 3.0
Description Description
Return Return
(void)
Source Source
File: includes/wc-update-functions.php
function wc_update_300_grouped_products() {
global $wpdb;
$parents = $wpdb->get_col( "SELECT DISTINCT( post_parent ) FROM {$wpdb->posts} WHERE post_parent > 0 AND post_type = 'product';" );
foreach ( $parents as $parent_id ) {
$parent = wc_get_product( $parent_id );
if ( $parent && $parent->is_type( 'grouped' ) ) {
$children_ids = get_posts(
array(
'post_parent' => $parent_id,
'posts_per_page' => -1,
'post_type' => 'product',
'fields' => 'ids',
)
);
update_post_meta( $parent_id, '_children', $children_ids );
// Update children to remove the parent.
$wpdb->update(
$wpdb->posts,
array(
'post_parent' => 0,
),
array(
'post_parent' => $parent_id,
)
);
}
}
}