m1ha555
-
Публікації
11 -
З нами
-
Відвідування
Тип публікації
Профілі
Форум
Маркетплейс
Статті
FAQ
Наші новини
Магазин
Блоги
module__dplus_manager
Повідомлення, опубліковані користувачем m1ha555
-
-
Может кому пригодиться решение для версии 2.3
Используем свободное поле UPC
Заменяем в product_form.tpl инпут на селект с циклом категорий, и в админку получаем поле выбором категории, в базу сохранится ИД категории
<div class="col-sm-10"> <select id="main_category_id" name="upc" class="form-control"> <option value="0" selected="selected"><?php echo $text_none; ?></option> <?php foreach($categories as $category) { ?> <?php if($category['category_id'] == $upc) { ?> <option value="<?php echo $category['category_id']; ?>" selected="selected"><?php echo $category['name']; ?></option> <?php } else { ?> <option value="<?php echo $category['category_id']; ?>"><?php echo $category['name']; ?></option> <?php } ?> <?php } ?> </select> </div>
В контролере поучаем ИД категории добавляем строчку в массив если нет
$data['upc'] = $product_info['upc'];
Ниже проверяем заполнено ли поле и по ИД получаем название и ссылку категории
if ($data['upc']) { $col_category = $this->model_catalog_category->getCategory($data['upc']); $data['cat_col_name'] = $col_category['name']; $data['cat_col_href'] = $this->url->link('product/category', 'path=' . $col_category['category_id']); }
И в шаблоне выводим в нужном месте
<?php if($upc): ?> Коллекция: <a href="<?php echo $cat_col_href; ?>"><?php echo $cat_col_name; ?></a> <?php endif;?>
-
2 minutes ago, AndreyQ said:
А в чем проблема выводить туда заданные категории для товара?
Список? А каким образом их разбить поштучно? И как понять что эта категория Фасон, эта категория бренд, а эта категория коллекция.
Нужен такой вид:
Коллекция:<ссылка категории>Название Категории</>
Бренд:<ссылка категории>Название Категории</>
Фасон:<ссылка категории>Название Категории</>
-
11 hours ago, vier said:
скорее всего это не Категории будут, а Атрибуты(Характеристики), Бренд можно выводить, как Характеристиками (задать в Атрибутах) или по стандарту самим брендом.
и если так, то можно, используя фильтр, повесить данные Характеристики на Параметры фильтра - требуется доработка для ссылок в карточке товара под "Хотелки".
по примеру - https://prnt.sc/pbfqir
ссылка на страницу товара - http://demo-fv-seo-2.oc-vier.ru/index.php?route=product/product&path=59&product_id=401
Это именно категории, Бренд это не производитель а тоже категория, коллекции это подкатегории бренда
-
11 hours ago, PaulKravchenko said:
Это не подойдёт, нужно именно выбор в ручную в админке, у продукта много категорий нужно вывести выборочные, плюс продукты будут разные в некоторых вывод ненужен, в некоторых нет коллекции или бренда.
-
Здравствуйте. Подскажите пожалуйста.
Переношу магаз с WP на Opencart. Нужно сделать вывод категорий как на скрине. То есть выбрать в ручную какая категория будет выводиться, на Вп реализовывал просто доп поля с выбором категорий. На Opencart не нашёл ничего подобного. Пока идея тока использовать свободные поля типа UPC, EAN ... Но так придётся ссылки ставить вручную, а товаров очень очень много .....
Может можно как то изменить тип поля на выбор категории???) Или через что нибудь другое реализовать. Буду благодарен за любую идею) -
12 minutes ago, xDD said:
Объясню на пальцах..
Не правильно если Вы хотите вывести кол-во в карточке товара у этого же товара.
Найдите к примеру вот такую строку
$data['model'] = $product_info['model'];
и вставьте после неё вот такую
$data['quantity'] = $product_info['quantity'];
В шаблоне обращайтесь вот так:
{{ quantity }}
Если Вы нашли в контроллере товара этот код, значит Вы пытаетесь добавить кол-во к рекомендуемым!
Спасибо огромное!) счас все работает.
-
14 minutes ago, xDD said:
Тут всё очевидно, Вы пытаетесь обратится к массиву которого нет.
Контроллер смотрите как правильно делается.
$data['quantity'] = $product_info['quantity'];
А можите по подробней, в контролер product.php добавил 'stock' => $result['quantity'], так неправильно?
$data['products'][] = array(
'product_id' => $result['product_id'],
'thumb' => $image,
'name' => $result['name'],
'stock' => $result['quantity'],
'description' => utf8_substr(trim(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'))), 0, $this->config->get('theme_' . $this->config->get('config_theme') . '_product_description_length')) . '..',
'price' => $price,
'special' => $special,
'tax' => $tax,
'minimum' => $result['minimum'] > 0 ? $result['minimum'] : 1,
'rating' => $rating,
'href' => $this->url->link('product/product', 'product_id=' . $result['product_id'])
); -
11 minutes ago, xDD said:
КЭШ
Не не кеш
В категории работает выводит количество, а в карточке почему то нет
-
опечатка)
catalog/view/theme/моя тема/template/product/product.twig
Здесь вывожу)
-
Как можно вывести количество товара в карточке товара.
Побывал так
catalog/controller/product/product.php
'stock' => $result['quantity'],
catalog/view/theme/моя тема/template/product/category.twig
{{ product['stock'] }}Не работает
OpenCart 3.0.3.1 (rs.2)
Вывод сопутствующих товаров автоматически
в Opencart 2.x: Пісочниця
Опубліковано:
Здравствуйте. Подскажите пожалуйста.
Нужно что бы сопутствующие товары в карточке выводились не ручным выбором в админке, а автоматически с той же категории.
В контролере заменил вывод
$data['products'] = array(); $results = $this->model_catalog_product->getProductRelated($this->request->get['product_id']);
на
$parts = explode('_', (string)$this->request->get['path']); $category_id = (int)array_pop($parts); $filter_data = array( 'filter_category_id' => $category_id ); $data['products'] = array(); $results = $this->model_catalog_product->getProducts($filter_data);
Товары вывелись, но вывелся и текущий товар. Как исключить его? И ограничить количество выводимых товаров.
Ставлю лимит
$filter_data = array( 'filter_category_id' => $category_id, 'limit' => 8 );
выводиться нужное количество, но и ошибка появиляется
Notice: Undefined index: start in /home/.../public_html/catalog/model/catalog/product.php on line 188Notice: Undefined index: start in /home/.../public_html/catalog/model/catalog/product.php on line 196