WPML
ステータス
開発者により解決済み
解決されたバージョン
Ultimate Addons for Elementor Version 1.37.0.1
関連するプラグイン/テーマ
Ultimate Addons for Elementor
トピックタグ
Compatibility

問題の概要

Ultimate Addons for ElementorプラグインのContent Toggleウィジェットを使用する際、高度な翻訳エディタ(ATE)を使用していると、翻訳されたElementorテンプレートが正しく表示されません。ウィジェットは、翻訳されたテンプレートを表示する代わりに、翻訳されたページ上に元の言語のコンテンツを表示します。

回避策

続行する前に、サイトの完全なバックアップを必ず作成してください。


  • テーマのfunctions.phpファイルを開きます。

  • 次のスニペットを追加します。
    // WPML: Workaround for compsupp-7677
    add_filter('elementor/frontend/before_render', 'wpml_compsupp7677_translate_content_toggle');
    
    function wpml_compsupp7677_translate_content_toggle($element) {
        if (!class_exists('SitePress') || 'uael-content-toggle' !== $element->get_name()) {
            return;
        }
    
        $settings = $element->get_settings();
        $keys_to_convert = [
            'section_content_',
            'saved_pages_', 
            'section_saved_rows_'
        ];
    
        $modified = false;
        foreach ($keys_to_convert as $key) {
            for ($i = 1; $i <= 2; $i++) {
                $setting_key = $key . $i;
                
                if (isset($settings[$setting_key]) && is_numeric($settings[$setting_key])) {
                    $post_type = get_post_type($settings[$setting_key]);
                    
                    if ($post_type) {
                        $settings[$setting_key] = apply_filters(
                            'wpml_object_id',
                            $settings[$setting_key],
                            $post_type,
                            true
                        );
                        $modified = true;
                    }
                }
            }
        }
    
        if ($modified) {
            $element->set_settings($settings);
        }
    }

すべての既知の問題 →