- Статус
- Решено
- Заявлено для
- WPML Multilingual & Multicurrency for WooCommerce 5.5.4
- Решено в
- WPML Multilingual & Multicurrency for WooCommerce 5.5.5
- Связанный плагин/тема
- WooCommerce PayPal Payments
- Теги темы
- Compatibility, WCML
Обзор проблемы
При использовании WooCommerce PayPal Payments с WPML Вы можете столкнуться с критической ошибкой после обновления WooCommerce Multilingual & Multicurrency до версии 5.5.4.
Warning: Undefined array key "ppcp-gateway" in /wp-content/plugins/woocommerce-multilingual/classes/multi-currency/payment-gateways/class-wcml-currencies-payment-gateways.php on line 161
Fatal error: Uncaught Error: Call to a member function get_setting() on null
Обходное решение
Пожалуйста, перед продолжением убедитесь, что у Вас есть полная резервная копия Вашего сайта.
- Откройте файл …/wp-content/plugins/woocommerce-multilingual/classes/multi-currency/payment-gateways/class-wcml-currencies-payment-gateways.php.
- Найдите строку 152.
- Замените:
if ( in_array( $id, array_keys( $this->supported_gateways ), true ) ) { - На:
if ( in_array( $id, array_keys( $this->supported_gateways ), true ) && in_array( $id, array_keys( $this->payment_gateways ), true ) ) {