WPML

Tổng quan về sự cố

Khi sử dụng tính năng nhân bản của WPML với các template Bricks, bạn sẽ gặp tình trạng các thay đổi trong ngôn ngữ mặc định không được phản ánh sang các ngôn ngữ khác khi plugin WPML Media Translation đang hoạt động.

Giải pháp tạm thời

Sự cố này đã được khắc phục trong WPML Multilingual CMS 5.0.0. Việc cập nhật giải quyết vấn đề này trên trang web của bạn, vì vậy bạn chỉ cần giải pháp tạm thời này nếu chưa thể cập nhật.

Cập nhật lên WPML 5.0 trở lên. Các template Bricks được nhân bản hiện sẽ tuân theo các thay đổi mà bạn thực hiện trong ngôn ngữ mặc định, ngay cả khi WPML Media Translation đang hoạt động.

Nếu bạn chưa thể cập nhật:

Vui lòng đảm bảo bạn có bản sao lưu toàn bộ trang web trước khi tiếp tục.

Phần I

  • Mở tệp …/wp-content/plugins/wpml-media-translation/classes/media-translation/class-wpml-media-custom-field-images-translation.php.
  • Tìm dòng 56.
  • Ngay sau:
    $setting          = $settings_factory->post_meta_setting( $meta_key );
  • Thêm:
    // Workaround part 1
    $bricks_meta_keys = array(
    	'_bricks_template_type',
    	'_bricks_page_content_2',
    	'_bricks_editor_mode',
    	'_bricks_template_settings',
    );
    
    if ( strpos( $meta_key, 'bricks' ) !== false ) {
    	return;
    }

Phần II

  • Mở tệp …/wp-content/plugins/wpml-media-translation/classes/media-translation/class-wpml-media-set-posts-media-flag.php.
  • Tìm dòng 128.
  • Ngay sau:
    $post_with_media_files = $this->post_with_media_files_factory->create( $post_id );
  • Chuyển phần sau thành comment:
    // Workaround part 2
    /*if ( $post_with_media_files->get_media_ids() ) { // it seems that this line is causing this issue
    	update_post_meta( $post_id, self::HAS_MEDIA_POST_FLAG, 1 );
    } else {
    	delete_post_meta( $post_id, self::HAS_MEDIA_POST_FLAG );
    }*/

Tất cả lỗi đã ghi nhận

Vẫn gặp sự cố này?

Nếu việc cập nhật không khắc phục được, hãy đặt một câu hỏi hỗ trợ và chúng tôi sẽ cùng bạn xem xét.