Php 如何创建magento助手类?
我有以下magento助手类Php 如何创建magento助手类?,php,magento,Php,Magento,我有以下magento助手类 class CommissionJunction extends Mage_Core_Helper_Data { /** * Get SKU, quantity, price and discount amount for each product in a given order * @param object $order * @return array */ private function _getO
class CommissionJunction extends Mage_Core_Helper_Data
{
/**
* Get SKU, quantity, price and discount amount for each product in a given order
* @param object $order
* @return array
*/
private function _getOrderProductsList($order) {
$orderItems = $order->getAllItems();
$purchasedSkus = array();
$count_orderItems = count($orderItems);
for($i = 0; $i < $count_orderItems; $i++) {
$purchasedSkus[$i] = array(
'ITEM' => $orderItems[$i]['sku'],
'QTY' => number_format($orderItems[$i]['qty_ordered'],0), // no decimals
'AMT' => number_format($orderItems[$i]['price'],2) // 2 decimal places
'DCNT' => number_format(abs($orderItems[$i]['discount_amount']),2) */
);
}
return $purchasedSkus;
}
/**
* Get the Universal Data (JSON) Object for Commission Junction.
* This object contains the order details passed on to Commission Junction for reporting purposes
* on the Checkout Success / Order Confirmation page.
* Notes:
* - CID, TYPE AND CURRENCY are hard coded
* @param string $orderId
* @return JSON object Universal Data Object for Commission Junction $json_masterTmsUdp
*/
public function getCommissionJunctionUdo($orderId) {
$order = Mage::getModel('sales/order')->loadByIncrementId($orderId);
$udo = array();
$udo['CID'] = 'XXXX';
$udo['TYPE'] = 'XXXX';
$udo['CURRENCY'] = 'USD';
$udo['OID'] = $orderId;
$udo['DISCOUNT'] = number_format(abs($order->discount_amount),2);
$order_coupon_code = $order->coupon_code;
if(!is_null($order_coupon_code) && !empty($order_coupon_code)) {
$udo['COUPON'] = $order_coupon_code;
}
$udo['PRODUCTLIST'] = self::_getOrderProductsList($order);
if(Mage::getModel('core/cookie')->get('aff_commissionjunction') == 'cjafflx') {
$udo['FIRECJ'] = "TRUE";
}
else {
$udo['FIRECJ'] = "FALSE";
}
$masterTmsUdo['CJ'] = $udo;
$json_masterTmsUdo = json_encode($masterTmsUdo);
return $json_masterTmsUdo;
}
}
我发现了这个网站,在那里他们解释了如何注册助手类
我唯一不知道的是:
我应该在magento结构的什么位置添加这个php类?
我应该编辑的config.xml文件在哪里?
用户创建的类应放置在此文件夹中:
app/code/community
另一个问题是,您应该为类使用与Magento相同的命名约定,即
MOduleNameSpace_ComissionJunction_Helper_Data
配置XML也应该放在你的app/code/community/MOduleNameSpace/commissionjunction/etc文件夹中我已经把我的放在app/code/community下了。另一个问题是,您的类应该使用与Magento相同的命名约定,即ComissionJunction\u Helper\u数据。配置XML应该放在您的应用程序/code/community/ComissionJunction/etcfolderCommunity中,用于第三方类,如您创建的类。我不认为核心应该是空的?这就是主类所在的地方。lol不,这是我的IDE上的一个小故障,两个都是空的,谢谢。请发布这篇文章,作为获得分数的答案,也许在此期间你可以帮助我解决这个问题: