Мне нужно добавить информацию из корзины для заказа электронной почты. Мне нужно отобразить поле поставщика для каждого продукта, но я не могу добавить его в таблицу oc_order_product. Мне кажется, что мне это нужно, чтобы я мог отправить его по электронной почте с заказом.
в каталоге / controller / checkout / cart.php я добавил это
$data['products'][] = array(
'cart_id' => $product['cart_id'],
'thumb' => $image,
'name' => $product['name'],
'supplier_id' =>htmlspecialchars_decode($product['supplier']),
'supplier_comments' =>htmlspecialchars_decode($product['suppliercomments']),
'model' => $product['model'],
'option' => $option_data,
'recurring' => $recurring,
'quantity' => $product['quantity'],
'stock' => $product['stock'] ? true : !(!$this->config->get('config_stock_checkout') || $this->config->get('config_stock_warning')),
'reward' => ($product['reward'] ? sprintf($this->language->get('text_points'), $product['reward']) : ''),
'price' => $price,
'total' => $total,
'href' => $this->url->link('product/product', 'product_id=' . $product['product_id'])
);
и в каталоге / модель / оформить заказ / заказ.php
if (isset($data['products'])) {
foreach ($data['products'] as $product) {
$this->db->query("INSERT INTO " . DB_PREFIX . "order_product SET order_id = '" . (int)$order_id . "', product_id = '" . (int)$product['product_id'] . "', name = '" . $this->db->escape($product['name']) . "', Suppliername = '" . (int)$product['supplier_id'] . "', Suppliercomments = '" . (int)$product['cupplier_comments'] . "', model = '" . $this->db->escape($product['model']) . "', quantity = '" . (int)$product['quantity'] . "', price = '" . (float)$product['price'] . "', total = '" . (float)$product['total'] . "', tax = '" . (float)$product['tax'] . "', reward = '" . (int)$product['reward'] . "'");
Проблема в том, что данные поставщика не хранятся в базе данных.
лучше создать новую таблицу для вашего поставщика информации, будет легко управлять
также как в opencart 3.X изменение таблицы базы данных по умолчанию является недействительным
Других решений пока нет …