Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

artem2103

Новичок
  
  • Публикаций

    25
  • Зарегистрирован

  • Посещение

Все публикации пользователя artem2103

  1. Да вот не понятен вопрос, как сортировка происходит в данном случае.
  2. $sql .= " GROUP BY p.product_id"; $sort_data = array( 'pd.name', 'p.model', 'p.quantity', 'p.price', 'rating', 'p.sort_order', 'p.date_added' ); if (isset($data['sort']) && in_array($data['sort'], $sort_data)) { if ($data['sort'] == 'pd.name' || $data['sort'] == 'p.model') { $sql .= " ORDER BY LCASE(" . $data['sort'] . ")"; } elseif ($data['sort'] == 'p.price') { $sql .= " ORDER BY (CASE WHEN special IS NOT NULL THEN special WHEN discount IS NOT NULL THEN discount ELSE p.price END)"; } else { $sql .= " ORDER BY " . $data['sort']; } } else { $sql .= " ORDER BY p.sort_order"; }
  3. А какой именно стандартный метод?
  4. Всем доброго времени суток! Подскажите пожалуйста, как в функции модели можно сделать сразу сортировку по какому-то из параметров, например по p.sort_order public function getProductsByData( $colum = 'isbn', $dt = 1 ) { $product_data = array(); $query = $this->db->query("SELECT p.*, p.product_id AS p_id, p.image AS p_image, pd.name AS pd_name, pd.description AS description, pd.tag AS tag, pd.meta_title AS m_title, pd.meta_description AS m_description, pd.meta_h1 AS m_h1, p2s.*, m.*, (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, (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 FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.$colum = '" . (int)$dt . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"); if( $query->num_rows > 0 ) { foreach( $query->rows as $res ) { $product_data[] = array( 'product_id' => $res['p_id'], 'name' => $res['pd_name'], 'description' => $res['description'], 'tag' => $res['tag'], 'title' => $res['m_title'], 'm_description' => $res['m_description'], 'm_h1' => $res['m_h1'], 'model' => $res['model'], 'ean' => $res['ean'], 'isbn' => $res['isbn'], 'mpn' => $res['mpn'], 'quantity' => $res['quantity'], 'image' => $res['p_image'], 'price' => $res['price'], 'special' => $res['special'], 'points' => $res['points'], 'weight' => $res['weight'], 'weight_class_id' => $res['weight_class_id'], 'length' => $res['length'], 'length_class_id' => $res['length_class_id'], 'width' => $res['width'], 'height' => $res['height'], 'subtract' => $res['subtract'], 'minimum' => $res['minimum'], 'rating' => round($res['rating']), 'sort_order' => $res['sort_order'], 'status' => $res['status'], 'date_added' => $res['date_added'], 'date_modified' => $res['date_modified'], 'viewed' => $res['viewed'] ); } return $product_data; } else { return false; } }
  5. Может потому, что после нажатия кнопки "Купить" кроме как в строке о том, что товар добавлен в корзину больше негде перейти в неё?)) Как минимум нужно добавить значок корзины и показать людям, ВОТ, кликайте потом сюда, чтобы в неё перейти. Могу даже помочь реализовать данный функционал Также хотел бы добавить, что стоит поставить простецкий модуль оформления заказа Simple, цена которого составляет 450 рублей, а клиентам поможет с лёгкостью оформить заказ без 232 этапов оформления от стандартной корзины OC.
  6. Буду также следить за темой)
  7. Учитывать в заказе посмотрите
  8. artem2103

    Итого в письме

    Вот в фото выше получаю просто два значения, это с итого и всего. Но не могу найти, где забирает второе значение
  9. artem2103

    Итого в письме

    Так мне нужно не отключить, а просто получить итоговую сумму заказ например такого формата: 7100.00 отдельным выводом
  10. Подскажите пожалуйста, где в письме формируется строка итого? По этому циклу идёт сразу две строки, всего и итого, а нужно просто вывести стоимость заказа без лишних строк для ссылки оплаты. Заранее благодарен за помощь, слава ЗСУ!
  11. А) Воспользоваться установщиком опенкарта на хостинге Б) Подключить корректно базу данных, в ошибке все написано
  12. 100% записан пробел в базу данных, искорените его через БД и Ваш вопрос будет решен.
  13. Да, понял, спасибо, решил вопрос
  14. Добрый день всем, подскажите пожалуйста с таким вопросом, была задача сделать слайдер фото, чтобы при клике на доп. фото - открывалось большое в фото в этом блоке. Не через слайдер как в обычном опенкарт, и вывел я это всё дело через доп. фото, просто создал еще одну image.thumb со своими размерами. Остался вопрос, как добавить основное фото товара в дополнительные, никак не могу разобраться.
  15. Может исправите отображение на широкоформатных экранах?
  16. artem2103

    Атрибуты

    'attribute_groups' => $this->model_catalog_product->getProductAttributes($result['product_id']) Пробовал так
  17. Никто ранее не выводил атрибуты в корзину simple? Не могу передать их, возможно кто-то ранее делал? Заранее спасибо всем, кто что-то подскажет)
  18. Да, параметры остаются, в обратном порядке не хочет работать.
  19. Соглашусь, но для 10 ед. товара условно и два фильтра по атрибутам не вижу смысла накатывать ОкФильтр.
  20. Выходит, что поля всегда остаются <input class="filters-chunk__radio-input sr-only" type="checkbox" name="filter[]" value="2" checked="checked">
  21. В данном случае почему-то не сработало
  22. Подскажите пожалуйста, поставил обычный фильтр опенкарт, всё окей, делаю фильтр получаю урл = /?filter=1%2C2%2C3 Но когда снимаю галочки с выбранных фильтров, нажимаю применить, страница перезагружается но галочки не снимаются. В чем может быть вопрос? {% for filter_group in filter_groups %} <div class="filters__chunk filters-chunk"> <h4 class="filters-chunk__title"> {{ filter_group.name }} </h4> {% for filter in filter_group.filter %} <label class="filters-chunk__radio"> {% if filter.filter_id in filter_category %} <input class="filters-chunk__radio-input sr-only" type="checkbox" name="filter[]" value="{{ filter.filter_id }}" checked="checked"> <span class="filters-chunk__radio-style"></span> <span class="filters-chunk__radio-text">{{ filter.name }}</span> {% else %} <input class="filters-chunk__radio-input sr-only" type="checkbox" name="filter[]" value="{{ filter.filter_id }}" > <span class="filters-chunk__radio-style"></span> <span class="filters-chunk__radio-text">{{ filter.name }}</span> {% endif %} </label> {% endfor %} </div> {% endfor %} <div class="panel-footer text-right"> <button type="button" id="button-filter" class="filter__btn">Применить</button> </div> <script type="text/javascript"><!-- $('#button-filter').on('click', function() { filter = []; $('input[name^=\'filter\']:checked').each(function(element) { filter.push(this.value); }); location = '{{ action }}&filter=' + filter.join(','); }); //--></script>
  23. Ошибка при загрузке нового фото к товару, и вообще добавления фото где либо.
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.