Microekspert
Новачок-
Публікації
23 -
З нами
-
Відвідування
Відвідувачі профілю
Блок відвідувачів профілю відключений і не буде доступний широкому іншим користувачам
Microekspert's Achievements
-
При переходе на бустрап 4 всё разъезжается. Править много где придётся
-
Засунул в нужный каталог этот swiper из интернетов.
-
Поставил 4 версию заменой файлов, прописал в header.twig путь к файлу с версией bundle, в которой есть уже popper.js внутри, но видимо ему требуется последняя версия jQuery, т.к. в консоле ругается на отсутствие файла DevTools failed to parse SourceMap: https://ххххххххх/catalog/view/javascript/jquery/swiper/js/maps/swiper.jquery.js.map Плюс ко всему везде в стиля _reboot.scss, Удаление файлов map не помогает
-
Я меняю twig основного шаблона и у меня перестает работать расширение subcategory-images_oc3.ocmod.zip, а я всего лишь добавил контент, согласно таблице, состоящей из 12 колонок. Как быть? Смотреть исходник этого расширения или просто самому запилить фото категории?
-
Интереснее на основе стандартного шаблона всё переделать. Посмотрим сколько проблем вылезет, завтра попробую прикрутить. Вообще мало информации по верстке, пришлось документацию читать по 4 версии, по 3 не нашел.
-
спасибо, попробую
-
Bootstrap 4 на Opencart 3 не собирается ли появляться? Есть ли возможность обновить его без проблем?
-
Доброго времени суток Необходимо сделать конфигуратор для opencart 3 модулем Конфигуратор осуществляет поиск товаров по атрибутам товаров в соответствующих категориях "ширина" и "высота" Выдача результата поиска - сам товар. Также необходимо сделать верстку на сайте, чтобы его расположить в нужное место, образец пришлю по почте. Можно использовать возможности встроенного поиска, переписав запрос к базе данных и взять основы кода в контроллере и view. От вас цена и сроки.
-
Начал в итоге сам пытаться сделать. Думаю как сделать правильный запрос к бд. Таблицу с атрибутами нашёл, поле для ввода сделал, все скрипты поправил, остался только запрос в модели. public function getProducts($data = array()) { - ЭТО запрос к БД в методе /catalog/model/catalog/product.php $sql = "SELECT p.product_id, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$this->config->get('config_customer_group_id') . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$this->config->get('config_customer_group_id') . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special"; - ЭТО добавление к запросу к БД в методе /catalog/model/catalog/product.php if (!empty($data['filter_name']) || !empty($data['filter_tag'])) { $sql .= " AND ("; if (!empty($data['filter_name'])) { $implode = array(); $words = explode(' ', trim(preg_replace('/\s+/', ' ', $data['filter_name']))); foreach ($words as $word) { $implode[] = "pd.name LIKE '%" . $this->db->escape($word) . "%'"; } if ($implode) { $sql .= " " . implode(" AND ", $implode) . ""; } if (!empty($data['filter_description'])) { $sql .= " OR pd.description LIKE '%" . $this->db->escape($data['filter_name']) . "%'"; } } if (!empty($data['filter_name']) && !empty($data['filter_tag'])) { $sql .= " OR "; } if (!empty($data['filter_tag'])) { $implode = array(); $words = explode(' ', trim(preg_replace('/\s+/', ' ', $data['filter_tag']))); foreach ($words as $word) { $implode[] = "pd.tag LIKE '%" . $this->db->escape($word) . "%'"; } if ($implode) { $sql .= " " . implode(" AND ", $implode) . ""; } } if (!empty($data['filter_name'])) { $sql .= " OR LCASE(p.model) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'"; $sql .= " OR LCASE(p.sku) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'"; $sql .= " OR LCASE(p.upc) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'"; $sql .= " OR LCASE(p.ean) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'"; $sql .= " OR LCASE(p.jan) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'"; $sql .= " OR LCASE(p.isbn) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'"; $sql .= " OR LCASE(p.mpn) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'"; } $sql .= ")"; filter_name - берется из массива /catalog/controller/product/product.php $filter_data = array( 'filter_name' => $search, 'filter_name1' => $search1, Здесь я прописал вторую переменную запроса search1, которую буду использовать для запроса к БД Как лучше оформить запрос?)))