Менеджерам интернет магазинов удобно получать всю информацию о заказе в письме, чтобы не тратить время на авторизацию в системе управления сайтом и поиск нового заказа. Но по умолчанию в Битрикс отсутствует возможность вывода телефона покупателя в письме. Покажем как легко можно это исправить.
В файле init.php (/bitrix/php_interface/init.php) создадим новую функцию и назначим её обработчиком события OnOrderNewSendEmail.
AddEventHandler("sale", "OnOrderNewSendEmail", "bxModifySaleMails");
Функция использует API модуля sale для выборки свойств заказа, а далее в результирующий массив добавляет поле с ключом PHONE.
function bxModifySaleMails($orderID, &$eventName, &$arFields)
{
if(CModule::IncludeModule("sale"))
{
$arProps = array();
$res = CSaleOrderPropsValue::GetOrderProps($arFields['ORDER_ID']);
while ($prop = $res->Fetch())
$arProps[$prop['CODE']] = $prop;
$arFields["PHONE"] = $arProps['PHONE']['VALUE'];
}
return true;
}
Теперь в админке сайта нужно перейти в раздел Настройки - Настройки продукта - Почтовые события - Почтовые шаблоны, выбрать интересующий нас шаблон почтового события SALE_NEW_ORDER и добавить в нужное место шаблона поле #PHONE#.
Мы свяжемся с Вами в ближайшее время.
Комментарии