- Статус
- Открыто
- Заявлено для
- WPML Multilingual & Multicurrency for WooCommerce 5.3.2
- Теги темы
- Bug
Обзор проблемы
В настоящее время примечание к заказу, добавляемое автоматически после первой покупки, может отображаться на языке, на котором был оформлен заказ, а не на языке админ-панели по умолчанию. Эта проблема возникает в ситуациях, когда пользователь совершает покупку на дополнительном языке.
Обходное решение
Перед продолжением обязательно сделайте полную резервную копию Вашего сайта.
- Откройте файл functions.php Вашей темы оформления.
- Добавьте следующий фрагмент кода:
// The action is added only once, we are removing it just after it's called. // The same happens for the hook to restore the language once the note is added. $temporarilySwitchToDefaultLang = function() use ( &$temporarilySwitchToDefaultLang ) { add_action( 'woocommerce_order_status_processing', $temporarilySwitchToDefaultLang ); do_action( 'wpml_switch_language', apply_filters( 'wpml_default_language', null ) ); $restoreLang = function() use ( &$restoreLang ) { remove_action( 'woocommerce_order_note_added', $restoreLang ); do_action( 'wpml_switch_language', null ); }; add_action( 'woocommerce_order_note_added', $restoreLang ); }; add_action( 'woocommerce_order_status_processing', $temporarilySwitchToDefaultLang );