WPML
상태
미해결
보고된 제품
WPML Multilingual & Multicurrency for WooCommerce 5.2.1
주제 태그
Bug, WCML

문제 개요

WPML Multilingual & Multicurrency for WooCommerce가 활성화되면 REST-API를 통한 대량 상품 업데이트 응답 시간이 크게 길어집니다.

임시 해결 방법

이 임시 해결 방법을 사용하기 전에 발생할 수 있는 주의 사항을 고려하세요.
번역 간에 모든 데이터가 동기화되지는 않아 이전 정보가 표시될 수 있습니다.

상품 업데이트 문제를 해결하려면 다음 방법을 시도할 수 있습니다.

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);

여전히 속도 저하 문제가 발생하고 상품이 여러 카테고리에 지정되어 있으며 상품에 번역이 많은 경우, 용어 재계산 우회를 시도할 수 있습니다.

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;
}

알려진 모든 문제 →