- סטטוס
- נפתר
- דווח עבור
- WPML Multilingual & Multicurrency for WooCommerce 5.1.2
- נפתר בגרסה
- WCML 5.2.0
- תוסף/ערכת עיצוב קשורים
- WooCommerce
- תגיות נושא
- Bug
סקירה כללית של התקלה
בעת שימוש בתכונת ריבוי המטבעות של WPML Multilingual & Multicurrency for WooCommerce, הווידג’ט סנן לפי מחיר מציג טווח מחירים לא מדויק עבור מטבעות משניים. הוא תמיד מציג את הטווח של מטבע ברירת המחדל.
פתרון עוקף
אנא הקפד לבצע גיבוי מלא של האתר שלך לפני שתמשיך.
- הוסף את קטע הקוד הבא לקובץ functions.php של ערכת העיצוב שלך:
use function WCML\functions\getClientCurrency; use function WPML\Container\make; add_filter( 'rest_request_after_callbacks', function( $response, $handler, $request ) { if ( wcml_is_multi_currency_on() && 'GET' === $request->get_method() && 'products/collection-data' === substr( $request->get_route(), -24 ) && ! empty( $request['calculate_price_range'] ) ) { $mc = make( \WCML_Multi_Currency::class ); $from_currency = $mc->get_default_currency(); $to_currency = getClientCurrency(); $data = $response->get_data(); $data['price_range']->min_price = $mc->prices->convert_price_amount( $mc->prices->unconvert_price_amount( $data['price_range']->min_price, $from_currency ), $to_currency ); $data['price_range']->max_price = $mc->prices->convert_price_amount( $mc->prices->unconvert_price_amount( $data['price_range']->max_price, $from_currency ), $to_currency ); $response->set_data( $data ); } return $response; }, 10, 3 );