Jump to content
Sign in to follow this  
gyurza2000

[РЕШЕНО] Вывод SKU и ВЕСА в счёт и письмо уведомление о заказе

Recommended Posts

В данный момент в админке можно просмотреть счёт на каждый заказ, но в нём указана МОДЕЛЬ, а мне нужен SKU и вес, и то же самое в письме что приходит когда человек делает заказ

Share this post


Link to post
Share on other sites

присоединяюсь + нужно вывести SKU в список товаров.

Share this post


Link to post
Share on other sites

в список товаров вывел модулем, а как в счёт и заказ?

Share this post


Link to post
Share on other sites
Здесь описана реализация показа СКУ в карточке товара!
  • +1 1

Share this post


Link to post
Share on other sites

Я это сделал VQModулем product-display-settings, странице списке товаров...но вот как в счёт, заказ и письмо уведомление вставить SKU !!!

Share this post


Link to post
Share on other sites

Здесь описана реализация показа СКУ в карточке товара!
спасибо, то что надо.


Я это сделал VQModулем product-display-settings, странице списке товаров...но вот как в счёт, заказ и письмо уведомление вставить SKU !!!
Думаю, что аналогично, вставив в соответствующим файле код:
<?php if ($product['sku']) { ?><span><?php echo $text_sku; ?></span> <?php echo $product['sku']; ?><br /><?php } else { ?><?php } ?>

с ним слово "Артикул" не будет отображаться, если у товара его нет.

С письмами еще не разбирался, конкретней сказать не могу.

Просто до этого выводил "Модель" - было не сложно (просто вставив код в файл category.tpl), т.к. она уже прописана в "admin" и "catalog", а sku было прописано только в "admin". Сейчас sku прописали в "catalog"

Edited by AlexFisher
code

Share this post


Link to post
Share on other sites

спасибо, то что надо.

Думаю, что аналогично, вставив в соответствующим файле код:

<?php if ($product['sku']) { ?>

<span><?php echo $text_sku; ?></span> <?php echo $product['sku']; ?><br />

<?php } else { ?>

<?php } ?>

с ним слово "Артикул" не будет отображаться, если у товара его нет.

С письмами еще не разбирался, конкретней сказать не могу.

Просто до этого выводил "Модель" - было не сложно (просто вставив код в файл category.tpl), т.к. она уже прописана в "admin" и "catalog", а sku было прописано только в "admin". Сейчас sku прописали в "catalog"

что то у меня так не получилось

Share this post


Link to post
Share on other sites

так как можно организовать:

1. требуется поправить ТЕМУ письма, что приходит АДМИНУ как уведомление о заказе. У меня она длинная типа "Магазин такой то таких то товаров - заказ 77", на складе часто приходится собирать заказ глядя в экран мобилы, а там такая длина не помещается нормально. Хотелось бы что бы Админу приходило просто в теме "Магазин - заказ 77", ведь админ и так в курсе что за магазин и по продаже каких товаров.

2. И ещё, можно ли добавить вывод ещё одного столбца - Масса? То есть что бы после столбца "Количество" стоял столбец "Масса" (где была бы суммарная масса по каждой позиции). А внизу, под "Итого" например, что бы суммарная масса по всем товарам выводилась

Уже готов поделиться деньгами...

Share this post


Link to post
Share on other sites

Осталось вывести суммарный вес заказа в письмо уведомление о заказе...как это сделать???

Share this post


Link to post
Share on other sites

подцепить

<?php if ($weight) { ?>

:-D

Share this post


Link to post
Share on other sites

Добрый вечер. Прочитал тему, так и не нашел решения этого вопроса. Ссылки битые, никто ничего конкретно так и не предложил. Хоть тема и 3-х летней давности, но актуальна и сейчас. Может предложит кто нибудь решение как вывести в письмо админу артикул? Спасибо.

Share this post


Link to post
Share on other sites

дергать из модели товара нужные поля, озвучивать их в шаблоне письма mail.php

Share this post


Link to post
Share on other sites

Добрый вечер. Прочитал тему, так и не нашел решения этого вопроса. Ссылки битые, никто ничего конкретно так и не предложил. Хоть тема и 3-х летней давности, но актуальна и сейчас. Может предложит кто нибудь решение как вывести в письмо админу артикул? Спасибо.

catalog/model/checkout/order.php

находим 

$template->data['products'] = array();

после нее вставляем 

$this->load->model('catalog/product');

находим ниже

$template->data['products'][] = array( 

Перед этой строкой вставляем код:

$product_data = array();
$product_data = $this->model_catalog_product->getProduct($product['product_id']);

После

$template->data['products'][] = array() 

добавляем нужное поле в массив:

'sku'    => $product_data['sku'],

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

catalog/view/theme/ваша_тема/template/mail/order.tpl

В нужном месте вставляем вывод нужного поля, например:

<?php echo $product['sku']; ?>

или вместо модели в письме 

    <td style="font-size: 12px; border-right: 1px solid #DDDDDD; border-bottom: 1px solid #DDDDDD; text-align: left; padding: 7px;"><?php echo $product['model']; ?></td>

выведем артикул

<td style="font-size: 12px; border-right: 1px solid #DDDDDD; border-bottom: 1px solid #DDDDDD; text-align: left; padding: 7px;"><?php echo $product['sku']; ?></td>
Edited by AlexFisher
code
  • +1 2

Share this post


Link to post
Share on other sites

а как в счет ску выводить? в теме не нашел и по форуму что-то же. Ткните носом, пожалуйста.

 

Или пост выше - это и про счет?

Edited by zdevl

Share this post


Link to post
Share on other sites

а как в счет ску выводить? в теме не нашел и по форуму что-то же. Ткните носом, пожалуйста.

 

Или пост выше - это и про счет?

В /admin/controller/sale/order.php

заменить 
$this->data['column_model'] = $this->language->get('column_model');
$this->data['column_quantity'] = $this->language->get('column_quantity');

на

$this->data['column_model'] = $this->language->get('column_model');
$this->data['column_sku'] = $this->language->get('column_sku');$this->data['column_quantity'] = $this->language->get('column_quantity');

заменить

'name'           => $product['name'],
'model'          => $product['model'],

на

'name'           => $product['name'],
'sku'            => $product['sku'],
'model'          => $product['model'],

в файле /admin/language/russian/sale/order.php добавить

$_['column_sku'] = 'Код товара';

в файле /admin/model/sale/order.php функция getOrderProducts изменить

$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_product WHERE order_id = '" . (int)$order_id . "'");

на

$query = $this->db->query("SELECT op.*,p.sku FROM " . DB_PREFIX . "order_product op LEFT JOIN ".DB_PREFIX."product p ON (op.product_id = p.product_id) WHERE order_id = '" . (int)$order_id . "'");

далее в /admin/view/template/sale/order_invoice.tpl добавить по аналогии

<td><b><?php echo $column_sku; ?></b></td>

и

<td><?php echo $product['sku']; ?></td>

также можно вывести sku и в /admin/view/template/sale/order_info.tpl

Edited by cassi
  • +1 2

Share this post


Link to post
Share on other sites

также можно вывести sku и в /admin/view/template/sale/order_info.tpl

 

 

Я прошу прошу прощения за мой тупизм, но за что отвечает этот файл.

 

Со счетом все получилось, большое Вам спасибо. 

Share this post


Link to post
Share on other sites

admin/view/template/sale/order_info.tpl - шаблон просмотра заказа в админке

Share this post


Link to post
Share on other sites

 

В /admin/controller/sale/order.php

заменить 
$this->data['column_model'] = $this->language->get('column_model');
$this->data['column_quantity'] = $this->language->get('column_quantity');

на

$this->data['column_model'] = $this->language->get('column_model');
$this->data['column_sku'] = $this->language->get('column_sku');$this->data['column_quantity'] = $this->language->get('column_quantity');

заменить

'name'           => $product['name'],
'model'          => $product['model'],

на

'name'           => $product['name'],
'sku'            => $product['sku'],
'model'          => $product['model'],

в файле /admin/language/russian/sale/order.php добавить

$_['column_sku'] = 'Код товара';

в файле /admin/model/sale/order.php функция getOrderProducts изменить

$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_product WHERE order_id = '" . (int)$order_id . "'");

на

$query = $this->db->query("SELECT op.*,p.sku FROM " . DB_PREFIX . "order_product op LEFT JOIN ".DB_PREFIX."product p ON (op.product_id = p.product_id) WHERE order_id = '" . (int)$order_id . "'");

далее в /admin/view/template/sale/order_invoice.tpl добавить по аналогии

<td><b><?php echo $column_sku; ?></b></td>

и

<td><?php echo $product['sku']; ?></td>

также можно вывести sku и в /admin/view/template/sale/order_info.tpl

 

Спасибо огромное!!!! 2 дня бодался с SKU с историей заказа на сайте у покупателя пока не нарвался на этот топик. Заодно теперь знаю как SKU в админ панели добавлять. Еще раз спасибо.

Share this post


Link to post
Share on other sites

Добавлю правда еще немного. После подстановки sku в историю заказа покупателя в личном кабинете на сайте, если указываете ссылку на товар в таблице в файле \catalog\view\theme\ваша_тема\template\accountorder_info.tpl

<a href="<?php echo $product['href']; ?>"><?php echo $product['sku']; ?></a>

, то эта ссылка не рабочая получается. Чтобы она работала, надо в файле контроллера \catalog\controller\account\order.php добавить в массиве, точнее после этой строки

$data['products'][] = array(

вот этот код

'href'      => $this->url->link('product/product', 'product_id=' . $product['product_id'])

Share this post


Link to post
Share on other sites

 

В /admin/controller/sale/order.php

заменить 
$this->data['column_model'] = $this->language->get('column_model');
$this->data['column_quantity'] = $this->language->get('column_quantity');

на

$this->data['column_model'] = $this->language->get('column_model');
$this->data['column_sku'] = $this->language->get('column_sku');$this->data['column_quantity'] = $this->language->get('column_quantity');

заменить

'name'           => $product['name'],
'model'          => $product['model'],

на

'name'           => $product['name'],
'sku'            => $product['sku'],
'model'          => $product['model'],

в файле /admin/language/russian/sale/order.php добавить

$_['column_sku'] = 'Код товара';

в файле /admin/model/sale/order.php функция getOrderProducts изменить

$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_product WHERE order_id = '" . (int)$order_id . "'");

на

$query = $this->db->query("SELECT op.*,p.sku FROM " . DB_PREFIX . "order_product op LEFT JOIN ".DB_PREFIX."product p ON (op.product_id = p.product_id) WHERE order_id = '" . (int)$order_id . "'");

далее в /admin/view/template/sale/order_invoice.tpl добавить по аналогии

<td><b><?php echo $column_sku; ?></b></td>

и

<td><?php echo $product['sku']; ?></td>

также можно вывести sku и в /admin/view/template/sale/order_info.tpl

 

- Сделал по пунктам, у покупателя ок, а админу всё равно не выводится в уведомлении этот SKU, будь он неладен. Система 1.5.6.4 стоковая.

А что такое в запросе есть op.*,p.sku и op.product_id ?

Edited by slammed

Share this post


Link to post
Share on other sites

всё. победил. нужно было изначально от обратного плясать.

 

в файле catalog\model\checkout\order.php

в этом блоке

$text .= $language->get('text_new_products') . "\n";

foreach ($order_product_query->rows as $product) {
$text .= $product['quantity'] . 'x ' . $product['name'] . ' (' . $product['model'] . ') ' . html_entity_decode($this->currency->format($product['total'] + ($this->config->get('config_tax') ? ($product['tax'] * $product['quantity']) : 0), $order_info['currency_code'], $order_info['currency_value']), ENT_NOQUOTES, 'UTF-8') . "\n";

нужно добавить свой злосчастный $product['sku'] в склейку строки.

Share this post


Link to post
Share on other sites

Версия: 2.1.0.2

Подскажите, может кто сталкивался.
После добавлений "sku" появились такие проблемы.

Редактировать заказ невозможно.

При заходе на вкладку "заказы" выскакивает ошибка:

Notice: Undefined index: status in /www/system/storage/modification/admin/controller/sale/order.php on line 167
На 167 строчке:   'status'        => $result['status'],

 

Если нажать на слово "статус" в списке заказов, получается такое:

 

Notice: Error: Unknown column 'status' in 'order clause'
Error No: 1054
SELECT o.order_id, CONCAT(o.firstname, ' ', o.lastname) AS customer, (SELECT os.name FROM oc_order_status os WHERE os.order_status_id = o.order_status_id AND os.language_id = '1') AS order_status, o.shipping_code, o.total, o.currency_code, o.currency_value, o.date_added, o.date_modified FROM `oc_order` o WHERE o.order_status_id > '0' ORDER BY status ASC LIMIT 0,20 in www/system/library/db/mysqli.php on line41 
Notice: Trying to get property of non-object in www/admin/model/sale/order.php on line 231
Warning: Invalid argument supplied for foreach() in www/system/storage/modification/admin/controller/sale/order.php on line 163

 

 

www/system/library/db/mysqli.php on line41  - 

trigger_error('Error: ' . $this->link->error  . '<br />Error No: ' . $this->link->errno . '<br />' . $sql);

 

 

 

www/admin/model/sale/order.php on line 231 - 

 

return $query->rows;

 

www/system/storage/modification/admin/controller/sale/order.php on line 163

foreach ($results as $result) {
Edited by endaries

Share this post


Link to post
Share on other sites

Ребята, как все таки вес товара вывести в письмо к покупателю?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By Leingard
      450.00 руб
      Скачать/Купить дополнение


      FakeOrders 1.5.1 PRO - имитация заказов на сайте
      Интерактивный модуль имитации заказов на сайте, который значительно повысит доверие Ваших клиентов к Вашему сайту!
       
      Модуль повышает доверие Ваших клиентов, путём имитации заказов на Вашем сайте. Клиенты видят, как в данный момент совершаются заказы на Вашем сайте реальных товаров, на которые они могут перейти и убедится в этом
       
      Посмотреть демо работы модуля OcStore 2.3 (установлено 8 секунд)
      Просмотреть демо работы модуля OcStore 2.1 (Установлено 6 секунд)
      Демо админ. панели (demo, demo) OcStore 2.3
       
      Версия для OpenCart 3
       
      Особенности:
      Быстрая скорость работы Использует актуальную информацию о Ваших товарах Возможность выбора категории из которой будут отображаться товары для имитации заказов (свой набор товаров) Возможность задать интервал для отображения (NEW) Возможность задать ценовую политику товаров для отображения (NEW) Разрешить / запретить показывать товары с ценой "0" (NEW) Разрешить / запретить показывать товары с количеством "0" (NEW) Возможность указать позицию отображения Возможность задать свой отступ отображения блока Удобная графическая настройка всех элементов модуля Поддержка практически любых нестандартных тем Повышает доверие к Вашему сайту с первых минут пребывания на нем  
      Приобретая модуль сейчас, в следующих дополнениях Вы бесплатно получите:
       
      3 вида анимации появления и исчезания 3 вида тем оформления (Классическая, Новогодняя, Современная)  
      Инструкция:
      Установите и настройте модуль по Вашим пожеланиям Выведите через схемы на любую страницу в любом расположении  
      Сложность установки и настройки: Лёгкая
       
      Обновление 1.5 (15.05.2019)
      Добавлена возможность отображения общего количества покупок товара (Купили N раз) Добавлена возможность включения / выключения товаров со статусом "выключен" (FIX если у Вас отображались товары с ценой 0) Теперь вся анимация модуля воспроизводится на CSS5, вместо JS (анимация стала легче и быстрее) Исправлена неполадка при которой товары выводились из одной категории некорректно Исправлена неполадка с повторением анимации одинаковых товаров Добавлена проверка цены на все возможные скидки и акции Добавлены подсказки для некоторых пунктов настроек  
      Обновление 1.4
      Оптимизирована работа скриптов вывода Исправлена неполадка при вызове товара из выключенной категории Обновление 1.3 (12.06.2018)
      Возможность задать интервал для отображения (NEW) Возможность задать ценовую политику товаров для отображения (NEW) Разрешить / запретить показывать товары с ценой "0" (NEW) Разрешить / запретить показывать товары с количеством "0" (NEW)  
      Обновление 1.2 (15.01.2018)
      Добавлена возможность выбрать категорию из которой будут отображаться товары для имитации заказов (свой набор товаров) Добавлена возможность указать позицию отображения Добавлена возможность задать свой отступ отображения блока Дополнительная оптимизация Исправления совместимости с некоторыми популярными темами  
      Обновление 1.1
      OpenCart/OcStore 2.2 Opencart/OcStore 2.1  
       
      Лицензия:
      Модуль продается с лицензией на сайт. Одна покупка = Один домен Покупая копию модуля вы получаете право на использование. Распространения модуль платно или бесплатно нарушает лицензию и грозит обнулением покупки, а так же уголовной ответственность предусмотренной статей 146 УК РФ (Нарушение авторских и смежных прав)  Автор оставляет за собой право изменят условия предоставления лицензии, изменения цены и стоков продления лицензии. Все доработки, переработки и изменения функционала не входят в стоимость модуля и оплачиваются отдельно по письменной договоренности с автором.  
      Тип распространения:
      Как есть Добавил Leingard Добавлено 20.12.2017 Категория Покупки, оформление заказа, корзина Системные требования bootstrap Сайт разработчика Метод активации По запросу в ЛС Ioncube Loader Нет OpenCart 2.3
      2.1 ocStore 2.3
      2.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1 Обращение к серверу разработчика Нет Старая цена 500  
    • By Leingard
      Интерактивный модуль имитации заказов на сайте, который значительно повысит доверие Ваших клиентов к Вашему сайту!
       
      Модуль повышает доверие Ваших клиентов, путём имитации заказов на Вашем сайте. Клиенты видят, как в данный момент совершаются заказы на Вашем сайте реальных товаров, на которые они могут перейти и убедится в этом
       
      Посмотреть демо работы модуля OcStore 2.3 (установлено 8 секунд)
      Просмотреть демо работы модуля OcStore 2.1 (Установлено 6 секунд)
      Демо админ. панели (demo, demo) OcStore 2.3
       
      Версия для OpenCart 3
       
      Особенности:
      Быстрая скорость работы Использует актуальную информацию о Ваших товарах Возможность выбора категории из которой будут отображаться товары для имитации заказов (свой набор товаров) Возможность задать интервал для отображения (NEW) Возможность задать ценовую политику товаров для отображения (NEW) Разрешить / запретить показывать товары с ценой "0" (NEW) Разрешить / запретить показывать товары с количеством "0" (NEW) Возможность указать позицию отображения Возможность задать свой отступ отображения блока Удобная графическая настройка всех элементов модуля Поддержка практически любых нестандартных тем Повышает доверие к Вашему сайту с первых минут пребывания на нем  
      Приобретая модуль сейчас, в следующих дополнениях Вы бесплатно получите:
       
      3 вида анимации появления и исчезания 3 вида тем оформления (Классическая, Новогодняя, Современная)  
      Инструкция:
      Установите и настройте модуль по Вашим пожеланиям Выведите через схемы на любую страницу в любом расположении  
      Сложность установки и настройки: Лёгкая
       
      Обновление 1.5 (15.05.2019)
      Добавлена возможность отображения общего количества покупок товара (Купили N раз) Добавлена возможность включения / выключения товаров со статусом "выключен" (FIX если у Вас отображались товары с ценой 0) Теперь вся анимация модуля воспроизводится на CSS5, вместо JS (анимация стала легче и быстрее) Исправлена неполадка при которой товары выводились из одной категории некорректно Исправлена неполадка с повторением анимации одинаковых товаров Добавлена проверка цены на все возможные скидки и акции Добавлены подсказки для некоторых пунктов настроек  
      Обновление 1.4
      Оптимизирована работа скриптов вывода Исправлена неполадка при вызове товара из выключенной категории Обновление 1.3 (12.06.2018)
      Возможность задать интервал для отображения (NEW) Возможность задать ценовую политику товаров для отображения (NEW) Разрешить / запретить показывать товары с ценой "0" (NEW) Разрешить / запретить показывать товары с количеством "0" (NEW)  
      Обновление 1.2 (15.01.2018)
      Добавлена возможность выбрать категорию из которой будут отображаться товары для имитации заказов (свой набор товаров) Добавлена возможность указать позицию отображения Добавлена возможность задать свой отступ отображения блока Дополнительная оптимизация Исправления совместимости с некоторыми популярными темами  
      Обновление 1.1
      OpenCart/OcStore 2.2 Opencart/OcStore 2.1  
       
      Лицензия:
      Модуль продается с лицензией на сайт. Одна покупка = Один домен Покупая копию модуля вы получаете право на использование. Распространения модуль платно или бесплатно нарушает лицензию и грозит обнулением покупки, а так же уголовной ответственность предусмотренной статей 146 УК РФ (Нарушение авторских и смежных прав)  Автор оставляет за собой право изменят условия предоставления лицензии, изменения цены и стоков продления лицензии. Все доработки, переработки и изменения функционала не входят в стоимость модуля и оплачиваются отдельно по письменной договоренности с автором.  
      Тип распространения:
      Как есть
    • By ruslan9191
      Как настроит автоматическое уведомление о заказе клиенту на ocstore 2.3? Например при оформление заказа клиент получает письмо о том что Ваш заказ № принят в ближайшее время наш менеджер с вами свяжется для подтверждение заказа. 
    • By VladLazarev
      Подскажите пожалуйста, я уже себе голову ломаю долго, я создал отдельную кнопку, отдельный ajax запрос для отдельной функции, и при добавлении в корзину я добавляю в новое поле таблицы cart  значение 1, на simplecheckout_cart.php я проверяю наличие этого поля, и если совпадает беру з бд новую цену, меняется значение самого товара, а вот общая сумма товара остается, подскажите пожалуйс та где можно поменять общую сумму заказа? Стоит simple checkout, Версия ocStore 2.1.0.2.1

    • By Vladi09
      Добрый день! Нужна помощь с решением проблемы.
      Есть сайт на ocStore 2.3.0.2.3
      Шаблон: ocTechStore
       
      Проблема возникает на этапе редактирования уже совершенного заказа. Суть проблемы в невозможности редактирования, кнопка "Продолжить" не реагирует на нажатия, сохранение изменений также невозможно.
       
      Консоль Firefox показывает ошибку:
       
      SyntaxError: '' string literal contains an unescaped line break index.php:3648:129
       
      Консоль Chrome:
       
      Uncaught SyntaxError: Invalid or unexpected token
       
      Видел в темах способі решения с заменами http на https и перепробовал все варианты решений из этих тем - ничего не помогло. редактировать заказ не получается.
       
      Ну и касательно разных модификаций - хочется разобраться без применения сторонних модулей. Да и не факт, что покупка модуля решит проблему,а выбрасывать деньги зря не хочется.
  • Recently Browsing   1 member

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.