не все так просто тут. эти макросы уже заложены в модуле и да они будудт вам доступны в шаблоне письма, но пустыми, так как о них модуль знать не знает что там должно быть.
вам нужно перехватить событие создания заказа и перенаправитьь на новое почтовое событие со своими макросами
Код |
---|
AddEventHandler("sale", "OnSaleStatusOrder", Array("stutuszaka", "OnSaleStatusOrder_stutuszaka"));
class stutuszaka
{
function OnSaleStatusOrder_stutuszaka($ID, $val)
{
if ($val == "D")
{
$arOrder = CSaleOrder::GetByID($ID);
$text = '
Новый статус заказа: Доставка покупателю<br/><br/>
Ваш заказ уже мчится к Вам.<br/><br/>';
$EMAIL = "";
$rsuUser = CUser::GetByID($arOrder[USER_ID]);
$aruUser = $rsuUser->Fetch();
$EMAIL .= $aruUser["EMAIL"];
$arEventFields = array(
"ORDER_ID" => $ID,
"ORDER_DATE" => $arOrder["DATE_INSERT"],
"EMAIL" => $EMAIL,
"SALE_EMAIL" => "info@info.ru",
"TEXT" => $text,
);
CEvent::SendImmediate("SALE_STATUS_CHANGED_D", "s1", $arEventFields);
}
}
}
|
вот пример перехвата изменения статуса заказа, по такому же принципу создание перехватить нужно
соответственно вот это ваши макросы
Код |
---|
$arEventFields = array(
"ORDER_ID" => $ID,
"ORDER_DATE" => $arOrder["DATE_INSERT"],
"EMAIL" => $EMAIL,
"SALE_EMAIL" => "info@info.ru",
"TEXT" => $text,
"ESE_MAKROS"=>"его значение"
);
|
в письме это #ORDER_ID#...
и не забудьте при этом отключить активность стандарных шаблонов
код вставляется в init.php - аккуратнее с этим