Php 如何从订单中获取客户名称?
我在action下拉列表(sales->orders)中添加了一个自定义选项Php 如何从订单中获取客户名称?,php,magento,Php,Magento,我在action下拉列表(sales->orders)中添加了一个自定义选项Complete。工作正常,订单状态更改成功完成 我正在将所有订单与Salesforce集成。我需要通过orderid获得所有订单详细信息。已成功获取物料明细和总计 任何人都可以帮助获取客户姓名和他/她的公司名称以及如何提交订单。以下是获取订单详细信息的完整代码: $order = Mage::getModel('sales/order')->load($orderId); $items = $order->
Complete
。工作正常,订单状态更改成功完成
我正在将所有订单与Salesforce
集成。我需要通过orderid
获得所有订单详细信息。已成功获取物料明细和总计
任何人都可以帮助获取客户
姓名和他/她的公司名称以及如何提交订单。以下是获取订单详细信息的完整代码:
$order = Mage::getModel('sales/order')->load($orderId);
$items = $order->getAllItems();
$_totalData = $order->getData();
$_grand = $_totalData['grand_total'];
$custname = $_totalData->getCustomerName();
$itemcount=count($items);
foreach ($items as $itemId => $item)
{
$sObject2->Item_name__c = $item->getName();
$sObject2->Unit_price__c = $item->getPrice();
$sObject2->Sku__c = $item->getSku();
$sObject2->Quantity__c = $item->getQtyToInvoice();
}
试试这个
$order->getCustomerName()
您可能不需要将
$order->getData()
强制转换为新变量。这只会占用内存,特别是因为您只需要从该数据中提取一个元素,可以使用不太密集的方法进行检索
相反,可以这样尝试:
$order = Mage::getModel('sales/order')->load($orderId);
$_grand = $order->getGrandTotal();
$custname = $order->getCustomerName();
foreach ($order->getAllItems() as $itemId => $item)
{
// Do stuff
}
如果$order->getCustomerName()
不适合您,请尝试:
$order->getBillingAddress()->getName();
谢谢安东,这对我有用。我需要customerid,我可以通过您的建议轻松获取它们。如果是客人结账单,则不会返回名称!编辑订单时-无法获取数据-$order->getCustomerFirstname()因为不存在。最好使用$order->getBillingAddress()->getFirstname();嗨,迈克,有没有文档可以查看所有可用的方法?
$custname = $Order->getCustomer()->getName();