WPML
Статус
Решено
Заявлено для
WPML Multilingual & Multicurrency for WooCommerce 4.11.7
Решено в
4.12.0

Обзор проблемы

При обращении к таксономии через REST API отображается неверный ID.

Обходное решение

Пока мы работаем над окончательным исправлением, Вы можете попробовать следующее обходное решение:


  1. Перед тем как продолжить, пожалуйста, сделайте полную резервную копию Вашего сайта

  2. Измените /woocommerce-multilingual/classes/Rest/Wrapper/ProductTerms.php (строка 75)

  3. Замените следующий код:
    			$response->data['translations'] = Fns::map(
    				$getTermId,
    				$this->wpmlTermTranslations->get_element_translations( $termTaxonomyId, $trid )
    			);


  4. На
    			remove_filter( 'terms_clauses', [ $this->sitepress, 'terms_clauses' ], 10 );
    			remove_filter( 'get_term', [ $this->sitepress, 'get_term_adjust_id' ], 1 );
    			$response->data['translations'] = Fns::map(
    				$getTermId,
    				$this->wpmlTermTranslations->get_element_translations( $termTaxonomyId, $trid )
    			);
    			add_filter( 'terms_clauses', [ $this->sitepress, 'terms_clauses' ], 10, 3 );
    			add_filter( 'get_term', [ $this->sitepress, 'get_term_adjust_id' ], 1 );

Все известные проблемы →