opencart заказать email дополнительное поле продукта - PullRequest
0 голосов
/ 18 мая 2018

Мне нужно добавить информацию из корзины для заказа электронной почты.Мне нужно показать поле поставщика для каждого продукта, но я не могу добавить его в таблицу oc_order_product. Я считаю, что мне это нужно, поэтому я могу отправить его с электронным письмом с заказом по адресу catalog / controller / checkout / cart.php. Я добавил это * 1001.*

$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'])
            );

и по каталогу / модели / кассе / order.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'] . "'");

Проблема в том, что данные поставщика не хранятся в базе данных

1 Ответ

0 голосов
/ 19 мая 2018

лучше создать новую таблицу для информации о вашем поставщике, с ней будет легко работать

также как в opencart 3.X изменение таблицы базы данных по умолчанию недействительно

...