woocommerce_local_pickup_methods, array( legacy_local_pickup, local_pickup

woocommerce_local_pickup_methods, array( legacy_local_pickup, local_pickup

Appears in:
Hook Type: filter

See hook in core

Displaying hooks found in version: woocommerce.11.0.0

apply_filters('woocommerce_local_pickup_methods, array( legacy_local_pickup, local_pickup') is found 2 times:

  • /includes/abstracts/abstract-wc-order.php line 1926
    		 *
    		 * @since 6.8.0
    		 * @param string[] $local_pickup_methods Local pickup shipping method IDs.
    		 */
    		$local_pickup_methods = apply_filters( 'woocommerce_local_pickup_methods', array( 'legacy_local_pickup', 'local_pickup' ) );
    
    		$shipping_method_ids = ArrayUtil::select( $this->get_shipping_methods(), 'get_method_id', ArrayUtil::SELECT_BY_OBJECT_METHOD );
    
    		// Set shop base address as a tax location if order has local pickup shipping method.
    		if ( $apply_base_tax && count( array_intersect( $shipping_method_ids, $local_pickup_methods ) ) > 0 ) {
    			$tax_based_on = TaxBasedOn::BASE;
    
  • /src/Blocks/Shipping/ShippingController.php line 502
    		// Use the same canonical local pickup method list that WC_Abstract_Order::get_tax_location() uses to force
    		// the base address. Relying on the currently-registered methods (LocalPickupUtils::get_local_pickup_method_ids())
    		// would miss legacy or deregistered methods on existing orders, leaving them taxed at the store base instead.
    		// phpcs:ignore WooCommerce.Commenting.CommentHooks.MissingHookComment -- Documented in WC_Abstract_Order::get_tax_location().
    		$local_pickup_method_ids = apply_filters( 'woocommerce_local_pickup_methods', array( 'legacy_local_pickup', 'local_pickup' ) );
    
    		foreach ( $order->get_shipping_methods() as $shipping_method ) {
    			if ( ! in_array( $shipping_method->get_method_id(), $local_pickup_method_ids, true ) ) {
    				continue;
    			}