- סטטוס
- נפתר
- דווח עבור
- WPML Multilingual & Multicurrency for WooCommerce 4.11.6
- נפתר בגרסה
- 4.12.0
סקירה כללית של התקלה
WooCommerce מספק לך וידג’ט סינון לפי מחיר שמאפשר למשתמשים שלך לסנן בקלות את המוצרים שלך.
נכון לעכשיו, אם אתה משתמש בתכונת ריבוי המטבעות שלנו, תבחין שבמטבעות משניים, הערכים min ו־max מוצגים כראוי, אולם הפילטר משתמש במחירים משפת ברירת המחדל. דבר זה גורם לו להציג תוצאות שגויות.
פתרון עוקף
לפני שתמשיך, צור גיבוי מלא של האתר שלך. לאחר מכן:
- פתח את התיקייה של WooCommerce Multilingual.
- מצא את הקובץ /woocommerce-multilingual/inc/currencies/class-wcml-multi-currency-prices.php.
- עבור לשורה 620.
- החלף את:
$args['where'] = str_replace( $wpdb->prepare( 'wc_product_meta_lookup.min_price >= %f', $min_price ), $wpdb->prepare( 'wc_product_meta_lookup.min_price >= %f', $min_price_in_default_currency ), $args['where'] ); $args['where'] = str_replace( $wpdb->prepare( 'wc_product_meta_lookup.max_price <= %f', $max_price ), $wpdb->prepare( 'wc_product_meta_lookup.max_price <= %f', $max_price_in_default_currency ), $args['where'] );
ב:
$args['where'] = str_replace( $wpdb->prepare( '%f<wc_product_meta_lookup.min_price', $max_price ), $wpdb->prepare( '%f<wc_product_meta_lookup.min_price', $max_price_in_default_currency ), $args['where'] ); $args['where'] = str_replace( $wpdb->prepare( '%f>wc_product_meta_lookup.max_price', $min_price ), $wpdb->prepare( '%f>wc_product_meta_lookup.max_price', $min_price_in_default_currency ), $args['where'] );