WC_Settings_Shipping::output_shipping_providers_screen
Handles output of the shipping providers settings screen.
Method of the class: WC_Settings_Shipping{}
No Hooks.
Returns
null. Nothing (null).
Usage
// protected - for code of main (parent) or child class $result = $this->output_shipping_providers_screen(): void;
Changelog
| Since 10.7.0 | Introduced. |
WC_Settings_Shipping::output_shipping_providers_screen() WC Settings Shipping::output shipping providers screen code WC 10.9.1
protected function output_shipping_providers_screen(): void {
$providers = get_terms(
array(
'taxonomy' => 'wc_fulfillment_shipping_provider',
'hide_empty' => false,
)
);
if ( is_wp_error( $providers ) ) {
$providers = array();
}
$shipping_providers = array();
foreach ( $providers as $provider ) {
$shipping_providers[] = array(
'term_id' => $provider->term_id,
'name' => $provider->name,
'slug' => $provider->slug,
'tracking_url_template' => get_term_meta( $provider->term_id, 'tracking_url_template', true ),
'icon' => get_term_meta( $provider->term_id, 'icon', true ),
);
}
wp_localize_script(
'wc-shipping-providers',
'shippingProvidersLocalizeScript',
array(
'providers' => $shipping_providers,
'default_shipping_provider' => array(
'term_id' => 0,
'name' => '',
'slug' => '',
'tracking_url_template' => '',
'icon' => '',
),
'wc_shipping_providers_nonce' => wp_create_nonce( 'wc_shipping_providers_nonce' ),
'strings' => array(
'unload_confirmation_msg' => __( 'Your changed data will be lost if you leave this page without saving.', 'woocommerce' ),
'save_failed' => __( 'Your changes were not saved. Please retry.', 'woocommerce' ),
'delete_confirmation' => __( 'Are you sure you want to delete this shipping provider?', 'woocommerce' ),
),
)
);
wp_enqueue_script( 'wc-shipping-providers' );
$shipping_provider_columns = array(
'wc-shipping-provider-name' => __( 'Name', 'woocommerce' ),
'wc-shipping-provider-slug' => __( 'Slug', 'woocommerce' ),
'wc-shipping-provider-tracking-url-template' => __( 'Tracking URL template', 'woocommerce' ),
'wc-shipping-provider-icon' => __( 'Icon URL', 'woocommerce' ),
);
include_once __DIR__ . '/views/html-admin-page-shipping-providers.php';
}