WPML
Statut
Résolu
Résolu dans
WPML Multilingual CMS 4.7.4
Extension/thème associé
Elementor
Étiquettes de sujet
Compatibility

Aperçu de l’anomalie

Lors de l’utilisation du widget Carrousel d’images d’Elementor avec WPML, les légendes traduites des images ne s’affichent pas sur le front-end, même lorsque les légendes sont traduites dans la médiathèque et que la page est traduite.

Solution de contournement

Veuillez vous assurer d’avoir une sauvegarde complète de votre site avant de continuer.


  • Ouvrez le fichier functions.php de votre thème.

  • Ajoutez l’extrait suivant :
// 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'] );
    }
}

  • N’oubliez pas de vider le cache d’Elementor
  • Toutes les anomalies connues →