Я пытался изменить стоимость доставки на фиксированную плату за язык. Это кажется правильным, просто добавив хук к woocommerce_package_rates.
Однако теперь я получаю несколько фатальных ошибок при попытке получить доступ к области аккаунта и корзине. Они начинаются с приведенной ниже ошибки, и все они запускаются из массива $ package ['rate'], который ему не нравится.
Warning: array_keys() expects parameter 1 to be array, null given in /home/..../....../wp-content/plugins/woocommerce/includes/wc-cart-functions.php on line 468
Это строка 464-468, $ new_rates throws ошибка.
function wc_shipping_methods_have_changed( $key, $package ) {
// Lookup previous methods from session.
$previous_shipping_methods = WC()->session->get( 'previous_shipping_methods' );
// Get new and old rates.
$new_rates = array_keys( $package['rates'] );
Ошибки исправились в одной точке, но теперь вернулись, поэтому не уверены, что временно исправило проблему.
Кто-нибудь знает, что может вызвать $ package ['rate '] терпеть неудачу? У меня по-прежнему есть все тарифы доставки, указанные в админке WooCommerce.
Спасибо.