Добрый день! Как мне сделать, чтобы товары в каталоге по умолчанию сортировались по ID товара, а не по указанной сортировке? Спасибо! OC 2.1.0.1
попробуйте сначала сами по примеру http://forum.opencart-russia.ru/thr...enenija-po-umolchaniju-kartochki-tovara.2153/ Не получится, пишите.
Спасибо за ссылку. По поводу админки я видел, тут, вроде понятно. А вот какой код правильно поменять в каталоге для посетителя я не понял. файлы, вроде: /catalog/controller/product/category.php /catalog/model/catalog/product.php не очень силен в кодинге
в файле \catalog\model\catalog\product.php в функции public function getProducts находим Код: $sql .= " ORDER BY p.sort_order"; и меняем PHP: $sql .= " ORDER BY p.product_id"; чуть выше в массив $sort_data = array( добавим 'p.product_id', и в catalog\controller\product\category.php найдем Код: $sort = 'p.sort_order'; заменим на PHP: $sort = 'p.product_id';
Влад, я так сразу и подумал. Меняю, потом обновляю модификаторы, но порядок не меняется.Сортировка по id отсюда: http://forum.opencart-russia.ru/threads/sortirovka-tovarov-v-adminke.619/#post-13985
не проверял. Но в моделе вот этот кусок в функции отвечает за сортировку PHP: if (isset($data['order']) && ($data['order'] == 'DESC')) { $sql .= " DESC, LCASE(pd.name) DESC"; } else { $sql .= " ASC, LCASE(pd.name) ASC"; } попробуйте убрать лишнее например LCASE(pd.name) ...
Если у вас не будут восстанавливаться продукты из архива на первую позицию, то списки по коду и id будут совпадать. Например для меня важно, что бы новый продукт был вверху списка, а по id или по дате он сортируется для меня не важно.
Понял в чем дело. Товары выводятся на главную страницу посредством модуля "Рекомендуемые > Home Page". Как в таком случае произвести сортировку? Или подскажите более изящный способ отобразить продукты на главной странице (без меню, переходов и пр. только список товаров)
Корявый способ: В файле \catalog\controller\module\featured.php - файл выводимого модуля на заглавной странице В условии (строка 24): PHP: if (!empty($setting['product'])) { Добавил: PHP: $products = array_reverse($products); Стало так: PHP: if (!empty($setting['product'])) { $products = array_slice($setting['product'], 0, (int)$setting['limit']); $products = array_reverse($products); // добавленная строка foreach ($products as $product_id) { $product_info = $this->model_catalog_product->getProduct($product_id); Жду еще предложений.
Это я уже понял, что свои файлы и своя модель. Изначально я посчитал, что на главной у меня выводится каталог товаров. Если вопрос выходит за рамки темы, давайте перенесем или создадим новую ветку.