Automattic\WooCommerce\Admin\Features\Fulfillments
FulfillmentsManager::get_custom_shipping_providers
Load custom shipping providers from the wc_fulfillment_shipping_provider taxonomy.
Method of the class: FulfillmentsManager{}
No Hooks.
Returns
Array. The modified list of shipping providers with custom providers appended.
Usage
$FulfillmentsManager = new FulfillmentsManager(); $FulfillmentsManager->get_custom_shipping_providers( $shipping_providers );
- $shipping_providers(array) (required)
- The current list of shipping providers.
Changelog
| Since 10.7.0 | Introduced. |
FulfillmentsManager::get_custom_shipping_providers() FulfillmentsManager::get custom shipping providers code WC 10.9.4
public function get_custom_shipping_providers( $shipping_providers ) {
if ( ! is_array( $shipping_providers ) ) {
$shipping_providers = array();
}
if ( ! taxonomy_exists( 'wc_fulfillment_shipping_provider' ) ) {
return $shipping_providers;
}
$terms = get_terms(
array(
'taxonomy' => 'wc_fulfillment_shipping_provider',
'hide_empty' => false,
)
);
if ( is_wp_error( $terms ) || empty( $terms ) ) {
return $shipping_providers;
}
foreach ( $terms as $term ) {
$icon = get_term_meta( $term->term_id, 'icon', true );
$tracking_url_template = get_term_meta( $term->term_id, 'tracking_url_template', true );
$shipping_providers[] = new CustomShippingProvider(
$term->slug,
$term->name,
is_string( $icon ) ? $icon : '',
is_string( $tracking_url_template ) ? $tracking_url_template : ''
);
}
return $shipping_providers;
}