Ich habe Ihre Antwort nach einer Suche in diesem official thread related to WC 2,6+ and Shipping default Zone und auch im Quellcode WC_Shipping_Zone
Klasse. Sie erfahren, dass die Standardklasse ID = 0
hat.
Ich habe diese zuerst versucht:
$default_zone = new WC_Shipping_Zone(0);
print_r($default_zone);
Und ich habe dieses Array:
WC_Shipping_Zone Object ([_data: protected] => Array ([zone_id] => 0
[ zone_name] => Rest der Welt [zone_order] => 0 [zone_locations] => Array()) [_locations_changed: WC_Shipping_Zone: privat] => [_cache_group: protected] => [_meta_type: protected] => post [object_id_field_for_meta : protected] => [_meta_data: protected] => Array() [_internal _meta_keys: protected] => Array())
Bingo 1! Dort werden die Daten und ich erhalte die Standard-Versand Zone Objekt, aber es ist geschützt und nicht zugänglich durch eine foreach-Schleife oder etwas anderes ...
Wenn Sie WC_Shipping_Zone
schauen Sie sehen tha es erstrecktWC_Data Klasse.
So habe ich versucht, WC_Data Methoden mit dem Objekt, auf diese Weise zu verwenden:
$default_zone = new WC_Shipping_Zone(0);
$default_zone_data = $default_zone->get_data();
print_r($default_zone_data);
Bingo 2 !!! Es gibt das sam-Array aus, aber dieses Mal ist es nicht geschützt und zugänglich.
Die Antwort ist also:
$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
Die Ausgabe von echo $default_zone_name
ist Rest der Welt (Re-Bingo !!!) ...
Das können Sie auch andere verwenden WC_Data
und WC_Shipping_Zone
Methoden, um die benötigten Daten zu erhalten:
$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 …
danke deine antwort aber kannst du mir helfen ** zone_name ** und ** zone_id ** von nur ** Kostenloser Versand ** methode? – huykon225
Appriciate deine Antwort. Ich habe den Weg gefunden, alles zu bekommen. Ich werde hier eine Antwort posten und deinen Skype hinzufügen. ich danke dir sehr ! – huykon225
ja @LoicTheAztec. Es hilft mir so sehr. danke nochmal – huykon225