WPML
状态
已由作者解决
解决于
Essential Addons for Elementor 6.6.3.
相关插件/主题
Essential Addons for Elementor
主题标签
Compatibility, Elementor Custom Widgets

问题概述

使用 Essential Addons for Elementor 时,通过 高级 > Wrapper Link 添加到 Elementor 容器的内部链接不会被 WPML 自动翻译。

因此,翻译后的页面可能仍会指向原始语言 URL。

临时解决方法

在继续操作之前,请确保为您的站点进行完整的站点备份


  • 将以下代码添加到您主题的functions.php文件中。
    add_filter( 'elementor/frontend/before_render', 'wpml_compsupp8345_eael_wrapper_link');
    function wpml_compsupp8345_eael_wrapper_link( $element ) {
        if ( 'container' !== $element->get_data( 'elType' ) ) {
            return;
        }
    
        $settings = $element->get_settings();
    
        if ( empty( $settings['eael_wrapper_link']['url'] ) ) {
            return;
        }
    
        $lang = apply_filters( 'wpml_current_language', null );
        $url  = apply_filters( 'wpml_permalink', $settings['eael_wrapper_link']['url'], $lang, true );
    
        $settings['eael_wrapper_link']['url'] = $url;
        $element->set_settings( 'eael_wrapper_link', $settings['eael_wrapper_link'] );
    }      
            

所有已知问题 →