WPML
Stato
Risolto
Risolto in
WPML Multilingual CMS 4.7.4
Plugin/tema correlato
Elementor
Tag dell’argomento
Compatibility

Panoramica del problema

Quando utilizzi il widget Image Carousel di Elementor con WPML, le didascalie tradotte delle immagini non vengono visualizzate nel frontend, anche quando le didascalie sono tradotte nella Libreria media e la pagina è tradotta.

Soluzione alternativa

Assicurati di avere un backup completo del sito prima di procedere.


  • Apri il file functions.php del tuo tema.

  • Aggiungi il seguente snippet:
// 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'] );
    }
}

  • Ricorda di svuotare la cache di Elementor
  • Tutti i problemi noti →