2016-03-05 2 views
0

Я пытаюсь напечатать GranTotal по электронной почте, когда клиент делает новый заказ, прямо сейчас я использовал эти переменные на System → транзакционных сообщений электронной почты:Как напечатать GranTotal на транзакционной электронной Magento 1,8

(а)

{{var Total}} 

Но не показывает общий

(б)

{{var order.getGrandTotal()}} 

Но я получаю ответ с четырьмя десятичными знаками, такими как: 1900,0000 И мы не используем десятичные знаки, чтобы ответ смущал моих клиентов.

Буду признателен за полный ответ того, что я мог бы сделать ... Спасибо!

+0

Можете ли вы использовать функцию типа number_format? Вы должны убрать цифры после десятичной точки. – KWeiss

ответ

0

Вам необходимо изменить параметры шаблона для форматирования до двух знаков после запятой.

например. Поиск в кодовую для:

$mailer->setTemplateParams(

Когда вы найдете транснациональный электронную почту вы хотите изменить (в данном случае, кажется, вы хотите редактировать новые сообщения заказов, поэтому, вероятно, в этом файле:

app\code\core\Mage\Sales\Model\Order.php 

Скопируйте файл:

app\code\local\Mage\Sales\Model\Order.php 

Затем отредактировать следующий код:

ОТ:

$mailer->setTemplateParams(array(
     'order'  => $this, 
     'billing'  => $this->getBillingAddress(), 
     'payment_html' => $paymentBlockHtml 
    )); 

TO:

$mailer->setTemplateParams(array(
    'formatted_total' => sprintf('%.2F', $this->getData('grand_total')), 
    'order'  => $this, 
    'billing'  => $this->getBillingAddress(), 
    'payment_html' => $paymentBlockHtml 
)); 

Чтобы получить использование разделителя тысяч:

'formatted_total' => number_format($this->getData('grand_total'), 2, '.', ','), 

Затем отредактировать шаблон электронной почты:

app/locale/en_US/template/email/sales/order_new.html 

Для вывода нового переменную, где вы хотите, чтобы она появилась.

var formatted_total 
+0

Спасибо @ Vladimir-Ramik, что он работал, но у меня есть два сомнения ... Я DIY на Magento, и я всегда слышал, что изменение файлов Core - это не лучший способ сделать что-то на magento ... это правильно? и ... можно добавить разделитель тысяч? таких как: 1.000? (точка для разделителя тысяч) прямо сейчас показывает: 1000, и это будет здорово иметь «1.000» Еще раз спасибо! –

+0

Вы правы. Редактирование ответа для включения дополнительной информации –

Смежные вопросы