WPML
Статус
Решено
Заявлено для
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 ) ) {
            

Все известные проблемы →