Как распечатать GranTotal на транзакционной электронной почте Magento 1.8

Я пытаюсь напечатать GranTotal по электронной почте, когда клиент делает новый заказ, сейчас я использовал эти переменные в Системе → Транзакционные письма:

(А)

{{var Total}}

Но не показывает всего

(Б)

{{var order.getGrandTotal()}}

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

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

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

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]