1. Главная
  2. Форумы
  3. Техподдержка Drupal
  4. Решение проблем

Письмо о заказе с сайта (интернет магазин: Commerce)

Главные вкладки

Добрый день, необходимо (追記) персональные данные (追記ここまで) (номер телефона ФИО и файл) заполняемые в заказе отправлялись в теле письма, которое приходит администратору.
Данные представлены в профиле:

Данную задачу решаю через модуль Rules.

После завершения о заполнении заявки выполняется действие отправки письма.

В теле письма использовал следующий код, но это только про содержание корзины, не про пользователя.

<?phpДата создания: [commerce-order:created]
Номер заказа: [commerce-order:order-number]

Содержание заказа:
<?php
$wrapper
= entity_metadata_wrapper('commerce_order', $commerce_order);
$line_items = $wrapper->commerce_line_items->value();
$products_total = commerce_currency_format(
$commerce_order->commerce_order_total['und'][0]['data']['components'][0]['price']['amount'],
$commerce_order->commerce_order_total['und'][0]['currency_code']
);
foreach(

$line_items as $line_item){
if(
$line_item->type == 'product'){
$product = commerce_product_load($line_item->commerce_product['und'][0]['product_id']);
echo
"\n".number_format($line_item->quantity)."- (количество) ";
echo
$product->title." ";
echo
commerce_currency_format($product->commerce_price['und']['0']['amount'],$product->commerce_price['und']['0']['currency_code']);
}
}
echo
"\nОбщая сумма заказа: " . $products_total;
?>

Ссылка на заказ:
[commerce-order:url]?>

Как сделать так что бы данные пользователя так же отображались в теле письма.

Комментарии

Аватар пользователя alex-litvinov alex-litvinov 8 января 2023 в 23:30

Чуточку поковырялся и разобрался как подгрузить поля, только не могу разобраться как подгружать в тело письмо файл который прикрепляется при оформлении заказа.

Вот код:

<?php
$order_id
= $commerce_order->order_id;
$wrapper = entity_metadata_wrapper('commerce_order', $commerce_order);
$line_items = $wrapper->commerce_line_items->value(); $field_fio = $wrapper->commerce_customer_billing->field_fio->value();
$field_e_mail = $wrapper->commerce_customer_billing->field_e_mail->value();
$field_number_tel = $wrapper->commerce_customer_billing->field_number_tel->value();
$field_rekv_compan = $wrapper->commerce_customer_billing->field_rekv_compan->value(); $products_total = commerce_currency_format(
$commerce_order->commerce_order_total['und'][0]['data']['components'][0]['price']['amount'],
$commerce_order->commerce_order_total['und'][0]['currency_code']
);
echo
"Заказ No ".$order_id;
echo
"\nФИО: ".$field_fio;
echo
"\nЭлектронная почта: ".$field_e_mail;
echo
"\nТелефон: ".$field_number_tel;
echo
"\nРеквизиты: ".$field_rekv_compan;
echo
"Список товаров:\n";
foreach(
$line_items as $line_item){
if(
$line_item->type == 'product'){
$product = commerce_product_load($line_item->commerce_product['und'][0]['product_id']);
echo
"\n".number_format($line_item->quantity)."x ";
echo
$product->title." ";
echo
commerce_currency_format($product->commerce_price['und']['0']['amount'],$product->commerce_price['und']['0']['currency_code']);
}
}
echo
"\nCумма заказа: " . $products_total;
?>

Поле: field_rekv_compan

Логотип drupal.ru

Содержимое сайта публикуется на условиях CreativeCommons Attribution-ShareAlike 3.0 или более поздней версии. Программные коды в тексте статей — на условиях GNU GPL v2 или более поздней версии.

Документация по совместной работе с репозиторием drupal.ru – https://docs.drupal.ru/code

Drupal – торговая марка Дриса Бёйтарта

12+

AltStyle によって変換されたページ (->オリジナル) /