2016-01-19 17:57:03 +00:00
< ? php
if ( ! defined ( 'ABSPATH' ) ) {
exit ;
}
?>
2016-05-13 15:08:19 +00:00
< h2 >
< ? php _e ( 'Shipping Zones' , 'woocommerce' ); ?>
< ? php echo wc_help_tip ( __ ( 'A shipping zone is a geographic region where a certain set of shipping methods and rates apply.' , 'woocommerce' ) . ' ' . __ ( 'WooCommerce will automatically choose the correct shipping zone based on your customer‘s shipping address and present the shipping methods within that zone to them.' , 'woocommerce' ) ); ?>
</ h2 >
2016-01-13 12:12:58 +00:00
2016-01-05 11:23:15 +00:00
< table class = " wc-shipping-zones widefat " >
2016-05-12 10:07:18 +00:00
< thead >
< tr >
< th class = " wc-shipping-zone-sort " >< ? php echo wc_help_tip ( __ ( 'Drag and drop to re-order your custom zones. This is the order in which they will be matched against the customer address.' , 'woocommerce' ) ); ?> </th>
< th class = " wc-shipping-zone-name " >< ? php esc_html_e ( 'Zone Name' , 'woocommerce' ); ?> </th>
< th class = " wc-shipping-zone-region " >< ? php esc_html_e ( 'Region(s)' , 'woocommerce' ); ?> </th>
< th class = " wc-shipping-zone-methods " >< ? php esc_html_e ( 'Shipping Method(s)' , 'woocommerce' ); ?> </th>
</ tr >
</ thead >
< tfoot >
< tr >
< td colspan = " 4 " >
< input type = " submit " name = " save " class = " button button-primary wc-shipping-zone-save " value = " <?php esc_attr_e( 'Save changes', 'woocommerce' ); ?> " disabled />
< a class = " button button-secondary wc-shipping-zone-add " href = " # " >< ? php esc_html_e ( 'Add shipping zone' , 'woocommerce' ); ?> </a>
</ td >
</ tr >
</ tfoot >
< tbody class = " wc-shipping-zone-rows " ></ tbody >
< tbody >
< tr data - id = " 0 " >
< td width = " 1% " class = " wc-shipping-zone-worldwide " ></ td >
< td class = " wc-shipping-zone-name " >
< a href = " <?php echo esc_url( admin_url( 'admin.php?page=wc-settings&tab=shipping&zone_id=0' ) ); ?> " >< ? php esc_html_e ( 'Rest of the World' , 'woocommerce' ); ?> </a>
< div class = " row-actions " >
2016-05-12 10:37:48 +00:00
< a href = " admin.php?page=wc-settings&tab=shipping&zone_id= { { data.zone_id }} " >< ? php _e ( 'View' , 'woocommerce' ); ?> </a>
2016-05-12 10:07:18 +00:00
</ div >
</ td >
2016-06-20 11:50:52 +00:00
< td class = " wc-shipping-zone-region " >< ? php esc_html_e ( 'This zone is used for shipping addresses that aren‘t included in any other shipping zone. Adding shipping methods to this zone is optional.' , 'woocommerce' ); ?> </td>
2016-05-12 10:07:18 +00:00
< td class = " wc-shipping-zone-methods " >
2016-03-24 17:26:40 +00:00
< ul >
< ? php
$worldwide = new WC_Shipping_Zone ( 0 );
$methods = $worldwide -> get_shipping_methods ();
2015-12-16 13:38:03 +00:00
2016-06-06 18:15:40 +00:00
if ( ! empty ( $methods ) ) {
2016-03-24 17:26:40 +00:00
foreach ( $methods as $method ) {
2016-05-12 10:07:18 +00:00
$class_name = 'yes' === $method -> enabled ? 'method_enabled' : 'method_disabled' ;
2016-03-24 17:26:40 +00:00
echo '<li class="wc-shipping-zone-method"><a href="admin.php?page=wc-settings&tab=shipping&instance_id=' . absint ( $method -> instance_id ) . '" class="' . esc_attr ( $class_name ) . '">' . esc_html ( $method -> get_title () ) . '</a></li>' ;
}
2016-04-21 15:18:15 +00:00
} else {
2016-06-20 11:50:52 +00:00
echo '<li class="wc-shipping-zone-method">' . __ ( 'No shipping methods offered to this zone.' , 'woocommerce' ) . '</li>' ;
2016-01-05 11:23:15 +00:00
}
2016-03-24 17:26:40 +00:00
?>
2016-04-21 15:18:15 +00:00
< li class = " wc-shipping-zone-methods-add-row " >< a href = " # " class = " add_shipping_method tips " data - tip = " <?php esc_attr_e( 'Add shipping method', 'woocommerce' ); ?> " data - disabled - tip = " <?php esc_attr_e( 'Save changes to continue adding shipping methods to this zone', 'woocommerce' ); ?> " >< ? php _e ( 'Add shipping method' , 'woocommerce' ); ?> </a></li>
2016-03-24 17:26:40 +00:00
</ ul >
2016-01-05 11:23:15 +00:00
</ td >
2016-05-12 10:07:18 +00:00
</ tr >
</ tbody >
2016-01-05 11:23:15 +00:00
</ table >
2015-12-10 11:55:03 +00:00
2015-12-16 15:37:40 +00:00
< script type = " text/html " id = " tmpl-wc-shipping-zone-row-blank " >
2016-04-22 10:13:39 +00:00
< ? php if ( 0 === $method_count ) : ?>
< tr >
< td class = " wc-shipping-zones-blank-state " colspan = " 4 " >
< p class = " main " >< ? php _e ( 'A shipping zone is a geographic region where a certain set of shipping methods and rates apply.' , 'woocommerce' ); ?> </p>
< p >< ? php _e ( 'For example:' , 'woocommerce' ); ?> </p>
< ul >
< li >< ? php _e ( 'Local Zone = California ZIP 90210 = Local pickup' , 'woocommerce' ); ?>
< li >< ? php _e ( 'US Domestic Zone = All US states = Flat rate shipping' , 'woocommerce' ); ?>
< li >< ? php _e ( 'Europe Zone = Any country in Europe = Flat rate shipping' , 'woocommerce' ); ?>
</ ul >
< p >< ? php _e ( 'Add as many zones as you need – customers will only see the methods available for their address.' , 'woocommerce' ); ?> </p>
< a class = " button button-primary wc-shipping-zone-add " >< ? php _e ( 'Add shipping zone' , 'woocommerce' ); ?> </a>
</ td >
</ tr >
< ? php endif ; ?>
2015-12-16 15:37:40 +00:00
</ script >
2015-12-10 11:55:03 +00:00
< script type = " text/html " id = " tmpl-wc-shipping-zone-row " >
2016-05-12 10:07:18 +00:00
< tr data - id = " { { data.zone_id }} " >
< td width = " 1% " class = " wc-shipping-zone-sort " ></ td >
< td class = " wc-shipping-zone-name " >
< div class = " view " >
< a href = " admin.php?page=wc-settings&tab=shipping&zone_id= { { data.zone_id }} " > {{ data . zone_name }} </ a >
< div class = " row-actions " >
2016-05-12 10:37:48 +00:00
< a href = " admin.php?page=wc-settings&tab=shipping&zone_id= { { data.zone_id }} " >< ? php _e ( 'View' , 'woocommerce' ); ?> </a> | <a class="wc-shipping-zone-edit" href="#"><?php _e( 'Edit', 'woocommerce' ); ?></a> | <a href="#" class="wc-shipping-zone-delete"><?php _e( 'Remove', 'woocommerce' ); ?></a>
2016-05-12 10:07:18 +00:00
</ div >
</ div >
< div class = " edit " >
2016-04-21 15:18:15 +00:00
< input type = " text " name = " zone_name[ { { data.zone_id }}] " data - attribute = " zone_name " value = " { { data.zone_name }} " placeholder = " <?php esc_attr_e( 'Zone Name', 'woocommerce' ); ?> " />
< div class = " row-actions " >
2016-05-12 10:07:18 +00:00
< a class = " wc-shipping-zone-cancel-edit " href = " # " >< ? php _e ( 'Cancel changes' , 'woocommerce' ); ?> </a>
</ div >
2016-04-21 15:18:15 +00:00
</ div >
2016-05-12 10:07:18 +00:00
</ td >
2015-12-10 15:09:37 +00:00
< td class = " wc-shipping-zone-region " >
2015-12-10 17:07:18 +00:00
< div class = " view " > {{ data . formatted_zone_location }} </ div >
2015-12-10 15:09:37 +00:00
< div class = " edit " >
< select multiple = " multiple " name = " zone_locations[ { { data.zone_id }}] " data - attribute = " zone_locations " data - placeholder = " <?php _e( 'Select regions within this zone', 'woocommerce' ); ?> " class = " wc-shipping-zone-region-select " >
< ? php
foreach ( $continents as $continent_code => $continent ) {
echo '<option value="continent:' . esc_attr ( $continent_code ) . '" alt="">' . esc_html ( $continent [ 'name' ] ) . '</option>' ;
$countries = array_intersect ( array_keys ( $allowed_countries ), $continent [ 'countries' ] );
foreach ( $countries as $country_code ) {
echo '<option value="country:' . esc_attr ( $country_code ) . '" alt="' . esc_attr ( $continent [ 'name' ] ) . '">' . esc_html ( ' ' . $allowed_countries [ $country_code ] ) . '</option>' ;
if ( $states = WC () -> countries -> get_states ( $country_code ) ) {
foreach ( $states as $state_code => $state_name ) {
echo '<option value="state:' . esc_attr ( $country_code . ':' . $state_code ) . '" alt="' . esc_attr ( $continent [ 'name' ] . ' ' . $allowed_countries [ $country_code ] ) . '">' . esc_html ( ' ' . $state_name ) . '</option>' ;
}
}
}
}
?>
</ select >
2015-12-10 18:33:59 +00:00
< a class = " wc-shipping-zone-postcodes-toggle " href = " # " >< ? php _e ( 'Limit to specific ZIP/postcodes' , 'woocommerce' ); ?> </a>
< div class = " wc-shipping-zone-postcodes " >
< textarea name = " zone_postcodes[ { { data.zone_id }}] " data - attribute = " zone_postcodes " placeholder = " <?php esc_attr_e( 'List 1 postcode per line', 'woocommerce' ); ?> " class = " input-text large-text " cols = " 25 " rows = " 5 " ></ textarea >
2016-05-23 16:30:37 +00:00
< span class = " description " >< ? php _e ( 'Postcodes containing wildcards (e.g. CB23*) and fully numeric ranges (e.g. <code>90210...99000</code>) are also supported.' , 'woocommerce' ) ?> </span>
2015-12-10 18:33:59 +00:00
</ div >
2015-12-10 15:09:37 +00:00
</ div >
</ td >
2016-05-12 10:07:18 +00:00
< td class = " wc-shipping-zone-methods " >
2016-03-24 17:26:40 +00:00
< div >
2016-05-12 10:07:18 +00:00
< ul >
2016-04-21 15:18:15 +00:00
< li class = " wc-shipping-zone-methods-add-row " >< a href = " # " class = " add_shipping_method tips " data - tip = " <?php esc_attr_e( 'Add shipping method', 'woocommerce' ); ?> " data - disabled - tip = " <?php esc_attr_e( 'Save changes to continue adding shipping methods to this zone', 'woocommerce' ); ?> " >< ? php _e ( 'Add shipping method' , 'woocommerce' ); ?> </a></li>
2016-03-24 17:26:40 +00:00
</ ul >
2016-05-12 10:07:18 +00:00
</ div >
2015-12-11 14:11:12 +00:00
</ td >
2016-05-12 10:07:18 +00:00
</ tr >
2015-12-10 11:55:03 +00:00
</ script >
2016-01-13 15:04:10 +00:00
< script type = " text/template " id = " tmpl-wc-modal-add-shipping-method " >
< div class = " wc-backbone-modal " >
< div class = " wc-backbone-modal-content " >
< section class = " wc-backbone-modal-main " role = " main " >
< header class = " wc-backbone-modal-header " >
2016-03-29 18:51:09 +00:00
< h1 >< ? php _e ( 'Add shipping method' , 'woocommerce' ); ?> </h1>
2016-01-13 15:04:10 +00:00
< button class = " modal-close modal-close-link dashicons dashicons-no-alt " >
< span class = " screen-reader-text " >< ? php _e ( 'Close modal panel' , 'woocommerce' ); ?> </span>
</ button >
</ header >
< article >
< form action = " " method = " post " >
2016-05-12 10:07:18 +00:00
< div class = " wc-shipping-zone-method-selector " >
2016-06-20 11:50:52 +00:00
< p >< ? php esc_html_e ( 'Choose the shipping method you wish to add. Only shipping methods which support zones are listed.' , 'woocommerce' ); ?> </p>
2016-05-12 10:07:18 +00:00
< select name = " add_method_id " >
< ? php
foreach ( WC () -> shipping -> load_shipping_methods () as $method ) {
if ( ! $method -> supports ( 'shipping-zones' ) ) {
continue ;
}
2016-07-14 01:16:59 +00:00
echo '<option data-description="' . esc_attr ( $method -> method_description ) . '" value="' . esc_attr ( $method -> id ) . '">' . esc_attr ( $method -> method_title ) . '</li>' ;
2016-05-12 10:07:18 +00:00
}
?>
</ select >
< input type = " hidden " name = " zone_id " value = " { { { data.zone_id }}} " />
</ div >
2016-01-13 15:04:10 +00:00
</ form >
</ article >
< footer >
< div class = " inner " >
2016-03-29 18:51:09 +00:00
< button id = " btn-ok " class = " button button-primary button-large " >< ? php _e ( 'Add shipping method' , 'woocommerce' ); ?> </button>
2016-01-13 15:04:10 +00:00
</ div >
</ footer >
</ section >
</ div >
</ div >
< div class = " wc-backbone-modal-backdrop modal-close " ></ div >
</ script >