我想将Commission Commission添加到我的客户端站点,因为他们询问了每个产品的sku和价格.在确认页面/成功页面之后,我们只需要传递值.但在这里我如何获得所有产品细节.包括sku,价格我需要通过.有没有办法单独获取每个产品的详细信息.
谢谢Suresh
是的,你是对的@leek
但是如果你想用CJ添加高级设置,那么请遵循这个方法.
<!-- Start of CJ Integration Part -->
<?php
$_customerId = Mage::getSingleton('customer/session')->getCustomerId();
$lastOrderId = Mage::getSingleton('checkout/session')->getLastOrderId();
$order = Mage::getSingleton('sales/order');
$order->load($lastOrderId);
$_totalData =$order->getData();
$_sub = $_totalData['subtotal'];//USD ==> global_currency_code,base_currency_code order_currency_code
// Incase if it is simple do this ==> https://www.emjcd.com/u?AMOUNT= $_sub;
//print_r($order); print_r($_totalData);
$_order = $this->getOrder();
$allitems = $order->getAllItems();
$index = 1;
$cjData = "";//Needed format ==> &ITEM1=3214sku&AMT1=13.49&QTY1=1&ITEM2=6577sku&AMT2=7.99&QTY2=2&
foreach($allitems as $item)
{
$cjData.="&ITEM".$index."=".$item->getSku()."&AMT".$index."=".$item->getPrice()."&QTY".$index."=".$item->getQtyToShip();
$index++;
}
?>
<div style="display:none;">
<img src="https://www.emjcd.com/u?CID=id&OID=<?php echo $this->getOrderId(); ?>&TYPE=type<?php echo $cjData; ?>&CURRENCY=USD&METHOD=IMG" height="1" width="20">
</div>
<!-- End of CJ Integration Part -->
Run Code Online (Sandbox Code Playgroud)
它工作得很好.
观看这样的活动:
<config>
<global>
<events>
<sales_order_place_after>
<observers>
<yourmodule_order_place_after>
<class>yourmodule/observer</class>
<method>onSalesOrderPlaceAfter</method>
</yourmodule_order_place_after>
</observers>
</sales_order_place_after>
</events>
</global>
</config>
Run Code Online (Sandbox Code Playgroud)
接下来,您需要一些东西来处理事件.
app/code/local/Yourcompany/Yourmodule /Model/Observer.php
<?php
class Yourcompany_Yourmodule_Model_Observer {
public function onSalesOrderPlaceAfter($observer) {
$order = $observer->getOrder();
/* @var $item Mage_Sales_Model_Order_Item */
foreach ($order->getItemsCollection() as $item) {
// Do something with $item here...
$name = $item->getName();
$price = $item->getPrice();
$sku = $item->getSku();
}
}
}
Run Code Online (Sandbox Code Playgroud)
请参阅数据库表"sales_flat_order_item"或执行a var_dump($item->debug())以查看可用的值类型.由于它是一个平面表,找到有关产品的更多信息的唯一方法是这样的:
$product = Mage:getModel('catalog/product')->load($item->getProductId());
$product->getDescription();
Run Code Online (Sandbox Code Playgroud)