我在official thread related to WC 2,6+ and Shipping default Zone以及WC_Shipping_Zone
類的源代碼中找到了一些搜索後的答案。您將瞭解到默認類有一個ID = 0
。
我曾嘗試該第一:
$default_zone = new WC_Shipping_Zone(0);
print_r($default_zone);
我得到這個數組:
WC_Shipping_Zone對象([_data:保護] =>數組([zone_id] => 0
[ zone_name] =>世界其他地區 [zone_order] => 0 [zone_locations] => Array())[_locations_changed:WC_Shipping_Zone:private] => [_cache_group:protected] => [_meta_type:protected] => post [object_id_field_for_meta :protected] => [_meta_data:protected] => Array()[_internal _meta_keys:protected] => Array())
賓果1!該數據是有,我得到默認發貨區對象,但它是保護和無法訪問通過foreach循環或其他什麼東西......
如果你看看WC_Shipping_Zone
你看到塔它延伸WC_Data class。
所以我試圖用WC_Data方法與對象,這種方式:
$default_zone = new WC_Shipping_Zone(0);
$default_zone_data = $default_zone->get_data();
print_r($default_zone_data);
賓果2!它會輸出sam數組,但這次不受保護和訪問。
所以答案是:
$default_zone = new WC_Shipping_Zone(0);
$default_zone_data = default_zone->get_data();
$default_zone_id = $default_zone_data->zone_id;
$default_zone_order = $default_zone_data-> zone_order;
$default_zone_locations = $default_zone_data-> zone_locations;
$default_zone_meta_data = $default_zone_data-> meta_data;
// AND TO FINISH THE THE NAME!!!
$default_zone_name = $default_zone_data->zone_name;
echo $default_zone_name
的echo $default_zone_name
輸出是世界其他地區(重賓果!)的...
的,你可以使用還有其他WC_Data
和WC_Shipping_Zone
方法來獲取所需的數據:
$default_zone = new WC_Shipping_Zone(0);
$default_zone_formatted_location = $default_zone->get_formatted_location();
$default_zone_shipping_methods$ = default_zone->get_shipping_methods();
// And so on …
謝謝你的回答,但你能幫我得到** zone_name **和** zone_id **只是**免費送貨**方法? – huykon225
Appriciate你的答案。我找到了獲得所有價值的方式。我會在這裏發佈一個答案並添加你的Skype。非常感謝 ! – huykon225
是@LoicTheAztec。它對我非常有幫助。再次感謝 – huykon225