WC_Marketplace_Updater::update_marketplace_suggestions()public staticWC 1.0

Fetches new marketplace data, updates wc_marketplace_suggestions.

Method of the class: WC_Marketplace_Updater{}

No Hooks.

Return

null. Nothing (null).

Usage

$result = WC_Marketplace_Updater::update_marketplace_suggestions();

WC_Marketplace_Updater::update_marketplace_suggestions() code WC 8.7.0

public static function update_marketplace_suggestions() {
	$data = get_option(
		'woocommerce_marketplace_suggestions',
		array(
			'suggestions' => array(),
			'updated'     => time(),
		)
	);

	$data['updated'] = time();

	$url     = 'https://woocommerce.com/wp-json/wccom/marketplace-suggestions/1.0/suggestions.json';
	$request = wp_safe_remote_get(
		$url,
		array(
			'user-agent' => 'WooCommerce/' . WC()->version . '; ' . get_bloginfo( 'url' ),
		)
	);

	if ( is_wp_error( $request ) ) {
		self::retry();
		return update_option( 'woocommerce_marketplace_suggestions', $data, false );
	}

	$body = wp_remote_retrieve_body( $request );
	if ( empty( $body ) ) {
		self::retry();
		return update_option( 'woocommerce_marketplace_suggestions', $data, false );
	}

	$body = json_decode( $body, true );
	if ( empty( $body ) || ! is_array( $body ) ) {
		self::retry();
		return update_option( 'woocommerce_marketplace_suggestions', $data, false );
	}

	$data['suggestions'] = $body;
	return update_option( 'woocommerce_marketplace_suggestions', $data, false );
}