Tổng quan về sự cố
Khi sử dụng widget Image Carousel của Elementor với WPML, các chú thích đã dịch của hình ảnh không hiển thị trên front-end, ngay cả khi các chú thích đã được dịch trong Thư viện phương tiện và trang đã được dịch.
Giải pháp tạm thời
Sự cố này đã được khắc phục trong WPML Multilingual CMS 4.7.4. 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.
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.
- Mở tệp functions.php trong giao diện của bạn.
- Thêm đoạn mã sau:
// WPML Workaround for compsupp-7726
add_filter( 'elementor/frontend/before_render', 'wpml_compsupp7726_filter_imagecarousel_widget');
function wpml_compsupp7726_filter_imagecarousel_widget($element) {
if ( 'image-carousel' !== $element->get_name() ) {
return;
}
$settings = $element->get_settings();
if ( isset( $settings['carousel'] ) && is_array( $settings['carousel'] ) ) {
foreach ( $settings['carousel'] as $key => $value ) {
$post_type = get_post_type( $value['id'] );
if ( ! $post_type ) {
continue;
}
$value['id'] = apply_filters( 'wpml_object_id', $value['id'], $post_type, true );
unset($settings['carousel'][$key]['id']);
$settings['carousel'][$key]['id'] = $value['id'];
}
$element->set_settings( 'carousel', $settings['carousel'] );
}
}