WC_REST_Legacy_Products_Controller::update_post_meta_fields( WP_Post $post, WP_REST_Request $request )
Update post meta fields.
Description Description
Parameters Parameters
- $post
-
(Required) Post data.
- $request
-
(Required) Request data.
Return Return
(bool|WP_Error)
Source Source
File: includes/legacy/api/class-wc-rest-legacy-products-controller.php
protected function update_post_meta_fields( $post, $request ) {
$product = wc_get_product( $post );
// Check for featured/gallery images, upload it and set it.
if ( isset( $request['images'] ) ) {
$product = $this->set_product_images( $product, $request['images'] );
}
// Save product meta fields.
$product = $this->set_product_meta( $product, $request );
// Save the product data.
$product->save();
// Save variations.
if ( $product->is_type( 'variable' ) ) {
if ( isset( $request['variations'] ) && is_array( $request['variations'] ) ) {
$this->save_variations_data( $product, $request );
}
}
// Clear caches here so in sync with any new variations/children.
wc_delete_product_transients( $product->get_id() );
wp_cache_delete( 'product-' . $product->get_id(), 'products' );
return true;
}