WPML
الحالة
تم الحل بواسطة المطور
النوع
خطأ برمجي
الإضافة/القالب ذو الصلة
Ultimate Addons for Elementor
وسوم الموضوع
Compatibility

نظرة عامة على المشكلة

عند استخدام Ultimate Addons for Elementor مع WPML، لا يعرض Post Grid Filter مصطلحات التصنيف المترجمة في اللغات الثانوية. تظهر التصنيفات في اللغة الافتراضية فقط.

حل بديل مؤقت

يُرجى التأكد من أخذ نسخة احتياطية كاملة لموقعك قبل المتابعة.


  • افتح الملف …/wp-content/plugins/ultimate-elementor/modules/posts/template-blocks/skin-style.php.

  • ابحث عن السطر 1088.

  • استبدل:
    $filter_type = $settings[ $filter_by . '_' . $post_type . '_filter_rule' ];
    
    $filters = $settings[ 'tax_' . $filter_by . '_' . $post_type . '_filter' ];

  • بـ:
    $filter_type = $settings[ $filter_by . '_' . $post_type . '_filter_rule' ];
    
    // WPML Workaround for compsupp-7728
    if (class_exists('Sitepress')) {
    	$original_terms = $settings[ 'tax_' . $filter_by  . '_' . $post_type . '_filter' ];
    	$translated_terms = [];
    
    	foreach ($original_terms as $term_slug) {
    		$term_obj = get_term_by('slug', $term_slug, $filter_by );
    		
    		if ($term_obj) {
    			$translated_term_id = apply_filters('wpml_object_id', $term_obj->term_id, $filter_by , true);
    			$translated_term = get_term($translated_term_id, $filter_by );
    			if ($translated_term && !is_wp_error($translated_term)) {
    				$translated_terms[] = $translated_term->slug;
    			}
    		}
    	}
    
    	$settings[ 'tax_' . $filter_by  . '_' . $post_type . '_filter' ] = $translated_terms;			
    }
    
    $filters = $settings[ 'tax_' . $filter_by . '_' . $post_type . '_filter' ];

جميع المشكلات المعروفة