A juzgar por su código, podría ser que el $chosen_shipping_rates
la matriz no se ha inicializado y se resuelve en NULL.
Por ejemplo, si tuvieras que hacer in_array('some string', $uninstantiated_array)
Esto devolverá la advertencia que está recibiendo.
Supongo que esto está sucediendo porque WC()->session
está configurado, pero no WC()->session->get( ‘chosen_shipping_methods’ )
y por lo tanto está obteniendo una matriz NULL.
Prueba a ver si agregando una variable $chosen_shipping_methods = WC()->session->get( ‘chosen_shipping_methods’ )
y luego usando ( isset( $chosen_shipping_methods ) ) ? $chosen_shipping_methods : array();
a ver si esto soluciona tu problema.
.