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?

Sukeshini
quelle

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 :)

Shathish
quelle
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();
Renon Stewart
quelle
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.

MagentoBoy
quelle
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