0
Я пытаюсь реализовать и получить некоторые партнерские расчеты с сайта success.phtml. Все работает хорошо, кроме «bd», который должен быть общим, без стоимости доставки. Я мог бы пропустить что-то в коде bd. Я новичок в php-коде. Пожалуйста, помогите мне в решении этой проблемы! Please look into screenshotКак получить общую сумму без стоимости доставки из заказа Magento?
<?php
// Add this to the file in the following path: app/design/frontend/[package]/[theme]/template/checkout/success.phtml
$iProgramId = 9560; // Insert your Program ID here
// Add the matching domain here.
$sMatchingDomain = 'https://dt51.net'; //For example: ds1.nl or dt51.net
// Retrieve order details and billing address
$oOrderDetails = Mage::getModel('sales/order')->loadByIncrementId($this->getOrderId());
$aBillingAddressData = $oOrderDetails->getBillingAddress();
$amount = $order->getGrandTotal() - $order->getShippingAmount();
foreach ($oOrderDetails->getAllItems() as $oItem)
{
break;
}
$aVariables = array(
'si' => $iProgramId,
'ti' => $this->getOrderId(),
'oa' => substr($oItem->getName(), 0, 50),
'om' => substr($oItem->getName(), 0, 50),
'bd' => number_format($oOrderDetails->getGrandTotal - $oOrderDetails->getShippingAmount(), 2, '.', ''),
'ln' => $aBillingAddressData['country_id'],
'pc' => $aBillingAddressData['postcode'],
'rv' => number_format($oOrderDetails->getGrandTotal(), 2, '.', ''),
'e1' => $oOrderDetails->getPayment()->getMethodInstance()->getTitle(),
'e2' => $oItem->getSku(),
'e3' => round($oItem->getQtyOrdered(), 0)
);
$sUrl = "".$sMatchingDomain."/t/";
$sGlue = "?";
foreach ($aVariables as $sKey => $mValue)
{
$sUrl .= $sGlue.$sKey."=".urlencode($mValue);
$sGlue = "&";
}
echo '<img src="'.$sUrl.'" style="border: 0px; height: 1px; width: 1px;" alt="Affiliate Marketing" />';
?>
Большое спасибо за ваш ответ. Я исправил ваш код, но все равно не повезло. Его не подсчитывает общий итог без цены перевозкы груза. с getSubtotal(), я могу получить цену без налога, с getGrandTotal() я могу получить Grand Total, но я не получаю общую сумму без стоимости доставки с помощью ($ oOrderDetails-> getGrandTotal() - $ oOrderDetails-> getShippingAmount(), 2 , '.', ''), – adder757
Получали ли вы стоимость доставки? –
Нет, я не получаю никакой стоимости доставки. Это фиксированная ставка 6,90 евро. Возможно ли получить значение «bd», как показано ниже «bd» => number_format ($ oOrderDetails-> getGrandTotal() - 6.90 – adder757