категория: , Дорабатываем, Полезности
✎ Опубликовано: 22.09.2017 ☕ Просмотров: 2570 ✉ Комментарии: 1
С коробки сортировка на странице акции по цене работает не правильно. Исправляем баг Opencart
Недавно столкнулся с тем что мне надо было сделать сортировку по цене от меньшего к большему на странице Акции (product/special). Вся проблема заключается в том что такая сортировка предусмотрена в Opencart на странице акций, но она неправильно работает.
Вообще, что бы задать сортировку на странице категории где есть перечень товаров достаточно указать ее вверху файла а именно задать строку
$sort = 'p.price';
и немного ниже указать ASC или DESC, например
$order = 'ASC';
В таком случае у нас товары в категориях буду сортироваться по цене от меньшей и большей.
Дело в том что на этой странице все товары идут акционные и цена их берется из таблицы product_special где цена обозначается как ps.price. Но все равно когда мы поставили эти значения у нас нет сортировки по цене. Проблема в том что mysql там сортирует как текстовое значение а не как числовое. Для того что бы работало нам надо просто добавить в сортировку +0. Таким образом мы переведем в числовой формат и сортировка будет натуральной.
До изменений сортирует так: 1000, 11, 147 и т.п.
После правок сортировать будет как надо: 11, 147, 1000
Итак, приступим. Открываем файл catalog/model/catalog/product.php и находим метод getProductSpecials где строку:
$sql .= " ORDER BY " . $data['sort'];
Заменяем на:
if ($data['sort'] == 'ps.price') {
$sql .= " ORDER BY (" . $data['sort'] . "+0)";
}else{
$sql .= " ORDER BY " . $data['sort'];
}
чистим модификаторы и наслаждаемся результатами :)
Описание поле и пояснения принципа работы тегов в Opencart
Все про порядок сортировки в Opencart простым и доступным языком (предназначение, вывод, использование)
Доработка сортировка рекомендованных товаров по категориям
Сортировка рекомендуемых товаров перетягиванием мышки
Сортировка товаров в корзине по порядку добавления
В стандарте опенкарт сортирует по умолчанию как p.sort_order а нам же надо для каждой категории своя. Инструкция как сделать.
Читая информацию о рекламе в facebook я нашел кое что интересное
Чистый и валидный HTML и CSS код, Хорошие показатели Google Page Speed, Более 20 модулей в комплекте, Профессиональная техническая поддержка - это только часть того что есть в шаблоне
Исправляем странный баг в Opencart в удаляется товар при копировании. Этот баг присутствует в google chrome
Также в статье хочу выразить благодарность не только Виталию а и другим крутым авторам дополнений с кем приходилось иметь дело
Чтобы принимать Биткоин и Лайткоин в OpenCart, вам не нужно заполнять утомительные документы, проходить проверку и ждать несколько дней. Установите бесплатный модуль и просто введите адрес своего Биткоин и/или Лайткоин кошелька. Тогда все входящие платежи
Монобанк - прогрессивный банк без отделений в котором дают кредитные карточки с хорошим грейс периодом а также возможностью заработать открыв в нем депозит. Именно о нем и пойдет речь
Мы знаем что поисковые роботы любят текст на страницах. Однако публикуя тексты помните предназначена ли эта страница для такого текста
Небольшой пример как можно сделать автоматически содержание описания со скролом при клике на заголовок
Обзор платежного шлюза fondy который позволяет сделать онлайн оплату на сайте за любые товары или услуги
Как оптимизировать сайт для google page speed - обзор основного функционала сервиса от гугл для проверки скорости загрузки страницы
Для того что бы вывести кастомную информацию не надо много кода. Достаточно применить правильный подход и пару строк кода. Читаем в статье.
Как мне "посчастливилось" пощупать UMI CMS особенно со стороны переноса данных и почему меня до сих пор тошнит при слове UMI
В этом обзоре будут выявлены все плюсы и минусы каждого фильтра. Всего в обзоре будет 7 фильтров который продаются и развиваются. По завершению будет дана рекомендация какой же выбрать
Коллеги, давайте предоставлять хороший сервис и поднимать планку качества. Небольшая история как я обращался к разным разработчикам