WPML
Statut
Ouvert
Signalé pour
WPML Multilingual & Multicurrency for WooCommerce 5.2.1
Étiquettes de sujet
Bug, WCML

Aperçu de l’anomalie

Lorsque WPML Multilingue & Multidevise pour WooCommerce est activé, le temps de réponse pour les mises à jour en masse des produits via l’API REST est considérablement plus long.

Solution de contournement

Avant d’utiliser ces solutions de contournement, veuillez prendre en compte les éventuels inconvénients.
Il est possible que toutes vos données ne soient pas synchronisées entre les traductions et qu’elles affichent potentiellement des informations obsolètes.

Pour tenter de remédier aux problèmes de mise à jour des produits, vous pouvez essayer ceci :

add_filter('rest_pre_dispatch', function ($result, $server, $request) {
	global $woocommerce_wpml;
	$params = serialize($request->get_params());
    if (str_contains($params, 'stock_quantity')){
    remove_filter( 'get_post_metadata', [ $woocommerce_wpml->products, 'filter_product_data' ] );
}
	return $result;
}, 10, 3);

Si vous rencontrez toujours des problèmes de lenteur, que votre produit est associé à plusieurs catégories et qu’il possède de nombreuses traductions, vous pouvez essayer de contourner le recomptage des termes

add_filter( 'woocommerce_product_recount_terms', 'bypass_term_recount_on_rest' );

function bypass_term_recount_on_rest( $value ){
	if ( defined( 'REST_REQUEST' ) && REST_REQUEST ) {
		$value = false;
	}
	return $value;
}

Toutes les anomalies connues →