我在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