0

URLを介してアクセスできるスクリプトを作成して、配信の詳細を出力しようとしています。具体的には、表示する必要のあるフィールドは、orderID、status、gift_message、および「delivery_instructions」と呼ばれるカスタム顧客アドレス属性です。これまでのところ、私は以下を持っていますが、私は配達指示を取得しようとして立ち往生しています、どんな助けでも大歓迎です。

<?php
require_once 'app/Mage.php';
Mage::app('default');
$myOrder=Mage::getModel('sales/order'); 

$orders=Mage::getModel('sales/mysql4_order_collection');
$message = Mage::getModel('giftmessage/message'); 
$customer = Mage::getModel('customer/customer');

$orders->addFieldToFilter('total_paid',Array('gt'=>0)); //Amount paid larger than 0
//$orders->addFieldToFilter('gift_message_id',Array('gt'=>0));

$allIds=$orders->getAllIds();
foreach($allIds as $thisId) {
    $myOrder->reset()->load($thisId);
    $shippingAddress = $myOrder->getShippingAddress();
    $customerDetails = $myOrder->getCustomer();
    //echo $myOrder->shippingaddress->getData('delivery_instructions');
    $customer_id = $myOrder->getCustomerId() . "',";
    echo $customer_id . "',";
        echo "'" . $myOrder->getStatus() . "',";
    echo "'" . $myOrder->getIncrementID() . "',";
    $gift_message_id = $myOrder->getGiftMessageId();
        if(!is_null($gift_message_id)) {
           $message->load($gift_message_id);
           echo $gift_message = $message->getData('message') . "',";
        };
$customer = Mage::getModel('customer/customer')->load( $customer_id); 
echo $customer = $customer->getData('incrementId'); 
echo "\r\n";
echo "<br/ >";
}
?>
4

2 に答える 2

0

あなたはこれに近いです:

//echo $myOrder->shippingaddress->getData('delivery_instructions');

配送先住所オブジェクトを取得するには、次を使用する必要があります。

$myOrder->getShippingAddress()

そして、配送先住所オブジェクトから delivery_instruction を取得するには:

$myOrder->getShippingAddress()->getDeliveryInstructions()
于 2012-10-24T10:31:46.343 に答える
0

カスタム住所属性とカスタム顧客属性を作成できます。

顧客属性には、次のようにアクセスできます。

// A customer is not mandatory for an order.
if($myOrder->getCustomerId()){
    $customer = Mage::getModel(’customer/customer’)->load($myOrder->getCustomerId());
    $customer->getDeliveryInstructions();
}

アドレス属性には、次のようにアクセスできます。

$myOrder->getShippingAddress()->getDeliveryInstructions();
于 2012-10-25T08:11:14.620 に答える