WC_Product_Variable::sync()public staticWC 1.0

Sync a variable product with its children. These sync functions sync upwards (from child to parent) when the variation is saved.

Method of the class: WC_Product_Variable{}

Return

WC_Product. Synced product object.

Usage

$result = WC_Product_Variable::sync( $product, $save );
$product(WC_Product|int) (required)
Product object or ID for which you wish to sync.
$save(true|false)
If true, the product object will be saved to the DB before returning it.
Default: true

WC_Product_Variable::sync() code WC 9.4.2

public static function sync( $product, $save = true ) {
	if ( ! is_a( $product, 'WC_Product' ) ) {
		$product = wc_get_product( $product );
	}
	if ( is_a( $product, 'WC_Product_Variable' ) ) {
		$data_store = WC_Data_Store::load( 'product-' . $product->get_type() );
		$data_store->sync_price( $product );
		$data_store->sync_stock_status( $product );
		self::sync_attributes( $product ); // Legacy update of attributes.

		do_action( 'woocommerce_variable_product_sync_data', $product );

		if ( $save ) {
			$product->save();
		}

		wc_do_deprecated_action(
			'woocommerce_variable_product_sync',
			array(
				$product->get_id(),
				$product->get_visible_children(),
			),
			'3.0',
			'woocommerce_variable_product_sync_data, woocommerce_new_product or woocommerce_update_product'
		);
	}

	return $product;
}