Wie erhalte ich die Lieferadresse anhand der Lieferadresse?


9

Ich habe das Bestellobjekt. Daraus kann ich die Lieferadresse ermitteln. Kann jemand vorschlagen, wie die Versandadresse anhand der Versandadresse abgeleitet werden kann?

Antworten:


15

Sie können das Objekt order_address verwenden, um die Lieferadresse abzurufen:

 $address = Mage::getModel('sales/order_address')->load($shippingId);
// $shippingId is the id you get from order object.
$custName = $address->getName();
$custAddr = $address->getStreetFull();
$region = $address->getRegion();
$country = $address->getCountry();

oder verwenden

print_r(get_class_methods($address)); 

um zu sehen, welche Methoden für das Adressobjekt ($ address) verwendet werden können.

hoffe es löst dein Problem :)


7

Um die Adresse von einem Bestellobjekt zu erhalten, können Sie dies einfach tun $order->getShippingAddress()

Vorausgesetzt

$order_id = 123; // put your order id here
$order = Mage::getModel('sales/order')->load($order_id);

Dann

$address = $order->getShippingAddress();
$custName = $address->getName();
$custAddr = $address->getStreetFull();
$region = $address->getRegion();
$country = $address->getCountry();

Ich habe meine Frage bereits vor Monaten gelöst. Auch wenn ich die Antwort schätze. +1
Sukeshini

$addressist leer, wenn ich benutze, $address = $order->getShippingAddress()aber wenn ich benutze $address = Mage::getModel('sales/order_address')->load($shippingId);Es gibt die Adresse zurück
Pradeep Singh

2

Shathish hat dir eine nette und korrekte Antwort gegeben.

Sie können jedoch die Singleton-Methode und eine Abfrage verwenden:

$shimnetId = "1"; // use your shipment id: 

$read = Mage::getSingleton('core/resource')->getConnection('core_read');

$query = "SELECT * FROM sales_flat_order_address WHERE entity_id='".$shipmentId."'";

$results = $read->fetchAll($query);

var_dump($results);

sales_flat_order_address enthält sowohl die Rechnungs- als auch die Lieferadresse.

Hoffe es wird für dich funktionieren.


2
Ich habe Ihre Lösung nicht getestet. Ich denke jedoch, dass es besser ist, nach der Art und Weise zu entwickeln, wie sich Magento entwickelt hat, als direkte SQL-Abfragen in der Quelle zu verwenden. Wie auch immer, schätzen Sie Ihren Vorschlag. Vielen Dank
Sukeshini
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.