Automattic\WooCommerce\Internal\Fulfillments\Providers
DHLShippingProvider::get_tracking_url
Generates the appropriate tracking URL based on DHL service type.
Method of the class: DHLShippingProvider{}
No Hooks.
Returns
String. The complete tracking URL.
Usage
$DHLShippingProvider = new DHLShippingProvider(); $DHLShippingProvider->get_tracking_url( $tracking_number ): string;
- $tracking_number(string) (required)
- The tracking number to generate URL for.
DHLShippingProvider::get_tracking_url() DHLShippingProvider::get tracking url code WC 10.3.3
public function get_tracking_url( string $tracking_number ): string {
$tracking_number = strtoupper( $tracking_number ); // Uppercase for consistency.
// DHL Global Mail and eCommerce prefixes.
if ( preg_match( '/^(GM|LX|RX|CN|SG|MY|HK|AU|TH|420)/', $tracking_number ) ) {
return 'https://webtrack.dhlglobalmail.com/?trackingnumber=' . rawurlencode( $tracking_number );
}
// DHL Paket Germany (3S...).
if ( preg_match( '/^3S[A-Z0-9]{8,12}$/', $tracking_number ) ) {
return 'https://www.dhl.de/en/privatkunden/dhl-sendungsverfolgung.html?piececode=' . rawurlencode( $tracking_number );
}
// Standard DHL Express tracking.
return 'https://www.dhl.com/en/express/tracking.html?AWB=' . rawurlencode( $tracking_number );
}