WPML

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

Перевод изображений с помощью WPML Media Translation может работать не так, как ожидается, для изображений, вставленных в краткое описание товара WooCommerce. Вы можете заметить, что, несмотря на перевод изображения, оно не отображается в переведенной версии краткого описания товара.

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

Эта проблема исправлена в WPML 4.7.2. Обновление решает эту проблему на Вашем сайте, поэтому это обходное решение понадобится Вам, только если Вы пока не можете выполнить обновление.

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

  • Откройте файл …/wp-content/plugins/wpml-media-translation/classes/media-translation/class-wpml-media-post-images-translation.php.
  • Найдите строку 146.
  • Замените:
    if ( $post_content_filtered !== $post->post_content ) {
    	$this->wpdb->update(
    		$this->wpdb->posts,
    		array( 'post_content' => $post_content_filtered ),
    		array( 'ID' => $post->ID ),
    		array( '%s' ),
    		array( '%d' )
    	);
    }
  • на:
    if ( $post_content_filtered !== $post->post_content ) {
    	$this->wpdb->update(
    		$this->wpdb->posts,
    		array( 'post_content' => $post_content_filtered ),
    		array( 'ID' => $post->ID ),
    		array( '%s' ),
    		array( '%d' )
    	);
    }
    
    $post_excerpt_filtered = $this->images_updater->replace_images_with_translations(
    	$post->post_excerpt,
    	$post_element->get_language_code(),
    	$post_element->get_source_language_code()
    );
    
    if ( $post_excerpt_filtered !== $post->post_excerpt ) {
    	$this->wpdb->update(
    		$this->wpdb->posts,
    		array( 'post_excerpt' => $post_excerpt_filtered ),
    		array( 'ID' => $post->ID ),
    		array( '%s' ),
    		array( '%d' )
    	);
    }

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

Всё ещё сталкиваетесь с этой проблемой?

Если обновление не устраняет проблему, отправьте запрос в поддержку, и мы разберемся в ней вместе с Вами.