public function needs_shipping_address()
{
if ('no' === get_option('woocommerce_calc_shipping')) {
return false;
}
$hide = apply_filters('woocommerce_order_hide_shipping_address', array('local_pickup'), $this);
$needs_address = false;
foreach ($this->get_shipping_methods() as $shipping_method) {
// Remove any instance IDs after :
$shipping_method_id = current(explode(':', $shipping_method['method_id']));
if (!in_array($shipping_method_id, $hide)) {
$needs_address = true;
break;
}
}
return apply_filters('woocommerce_order_needs_shipping_address', $needs_address, $hide, $this);
}