WPML
סטטוס
נפתר
נפתר בגרסה
WPML Multilingual CMS 4.7.4
תוסף/ערכת עיצוב קשורים
Elementor
תגיות נושא
Compatibility

סקירה כללית של התקלה

התכונה הניסיונית סנן טקסונומיה של Elementor Pro, שנמצאת כרגע בשלב אלפא, מציגה בעיות בעת שימוש ב־Loop Grid בעמודים מתורגמים ואינה מצליחה להציג את התוצאות הצפויות.

פתרון עוקף

אנא ודא שיש לך גיבוי מלא של האתר שלך לפני שתמשיך.

חלק 1


  • פתח את הקובץ …/wp-content/plugins/elementor-pro/modules/loop-filter/widgets/taxonomy-filter.php.

  • חפש את שורה 691.

  • ממש אחרי:
    		$widget_data = Utils::find_element_recursive( $document->get_elements_data(), $this->get_settings_for_display( 'selected_element' ) );

  • הוסף את הקוד הזה:
    		if (isset($widget_data['settings']['post_query_include_term_ids'])) {
    			$translated_data = [];
    			foreach ($widget_data['settings']['post_query_include_term_ids'] as $term_id) {
    				$translated_data[] = get_term($term_id)->term_id;
    			}
    			$widget_data['settings']['post_query_include_term_ids'] = $translated_data;
    		}

חלק 2


  • פתח את הקובץ functions.php של ערכת העיצוב שלך.

  • הוסף את הקוד הבא:
    /**
     * @link wpmlsupp-11444
     */
    add_filter( 'elementor/query/query_args', function( $query_args ) {
    	$translated_query_args = $query_args;
    
    	if (isset($query_args['tax_query'])) {
    		foreach ($query_args['tax_query'] as $key => $query) {
    			if (isset($query['field']) && in_array($query['field'], ['term_id', 'term_taxonomy_id'], true)) {
    				$query['terms'] = array_map(function( $id ) use ($query){
    					return apply_filters( 'wpml_object_id', $id, $query['taxonomy'], TRUE  ); 
    				}, (array) $query['terms']);
    
    				$translated_query_args['tax_query'][$key] = $query;
    			}
    		}
    	}
    
    	return $translated_query_args;
    }, 100 );

כל התקלות הידועות →