SHKEd 0 Опубликовано 26 августа, 2020 Жалоба Share Опубликовано 26 августа, 2020 Крутил я так и всяк, а как по умолчанию сделать так, чтобы товары сортировали по ручной сортировке, но товары не в наличии (сток меньше или равно нулю) уходили назад? Может кто прикрутил такую сортировку, подскажите пожалуйста А то я пока не могу в голове даже разобрать такой запрос, на ум приходит только сортировка уже после получения списка, отсортировать их вручную методом перебора Но проблема ( он бьет по страницам Ссылка на сообщение Поделиться на другие сайты
SHKEd 0 Опубликовано 26 августа, 2020 Автор Жалоба Share Опубликовано 26 августа, 2020 Было решено все же вручную сделать, знаю что не по феншуйски это, но другого выхода я пока не придумал, позже может чет умнее придет в голову. Просто добавил параметр "sort_stock", и разбил на страницы массив всех товаров Замена function.content_listing.php } else { if (!isset($params['limit'])) $params['limit'] = $config['PRODUCTS_PER_PAGE']; $content_list_data = $Content->find('all', array('conditions' => $content_list_data_conditions, 'limit' => $params['limit'], 'page' => $params['page'], 'order' => array($params['order_column']))); $content_total = $Content->find('count', array('conditions' => $content_list_data_conditions)); } На } else { if (!isset($params['limit'])) $params['limit'] = $config['PRODUCTS_PER_PAGE']; if (isset($params['sort_stock'])) { $content_list_data = $Content->find('all', array('conditions' => $content_list_data_conditions, 'order' => array($params['order_column']))); $sort_first = $sort_second = array(); foreach($content_list_data as $stock){ ($stock['ContentProduct']['stock'] <= 0) ? $sort_second[] = $stock : $sort_first[] = $stock; } $content_list_data = array_merge($sort_first,$sort_second); $offset = ($params['page'] == 1) ? 0 :($params['page'] - 1) * $params['limit']; $content_list_data = array_slice($content_list_data, $offset, $params['limit']); $content_total = $Content->find('count', array('conditions' => $content_list_data_conditions)); }else{ $content_list_data = $Content->find('all', array('conditions' => $content_list_data_conditions, 'limit' => $params['limit'], 'page' => $params['page'], 'order' => array($params['order_column']))); $content_total = $Content->find('count', array('conditions' => $content_list_data_conditions)); } } добавить в листинг шаблона Категории параметр {content_listing parent={$content_id} page={$page} type="product,downloadable" current_order={$current_order} order="order" sort_stock="1" } Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 26 августа, 2020 Жалоба Share Опубликовано 26 августа, 2020 3 часа назад, SHKEd сказал: Крутил я так и всяк, а как по умолчанию сделать так, чтобы товары сортировали по ручной сортировке, но товары не в наличии (сток меньше или равно нулю) уходили назад? Может кто прикрутил такую сортировку, подскажите пожалуйста А то я пока не могу в голове даже разобрать такой запрос, на ум приходит только сортировка уже после получения списка, отсортировать их вручную методом перебора Но проблема ( он бьет по страницам Вроде как в sql просто задаётся order by sort order asc, quantity desc Как-то так, надо экспериментировать. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 26 августа, 2020 Жалоба Share Опубликовано 26 августа, 2020 Не заметил второго сообщения. Ну да, примерно так и сделали я так понял, задав order by Ссылка на сообщение Поделиться на другие сайты
SHKEd 0 Опубликовано 26 августа, 2020 Автор Жалоба Share Опубликовано 26 августа, 2020 20 минут назад, support сказал: Не заметил второго сообщения. Ну да, примерно так и сделали я так понял, задав order by Неее, не так... (остались в коде неудаляшки). Получил все и отсеял, если задан параметр - сортировать по стоку. Таким образом все товары, которые не в наличии - уходят назад страниц. Впереди уже получается та сортировка,которую задает пользователь: по имени, по цене и т.д. https://akvagrim-studio.ru/category/Reguljarnye-cveta.html Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 26 августа, 2020 Жалоба Share Опубликовано 26 августа, 2020 39 минут назад, SHKEd сказал: Неее, не так... (остались в коде неудаляшки). Получил все и отсеял, если задан параметр - сортировать по стоку. Таким образом все товары, которые не в наличии - уходят назад страниц. Впереди уже получается та сортировка,которую задает пользователь: по имени, по цене и т.д. https://akvagrim-studio.ru/category/Reguljarnye-cveta.html Понятно. Так а я хотел спросить, вот в git код который лежит, он же уже с новым модулем оформления, модули доставки, оплаты тоже исправлены там?! База данных где-то тоже есть исправленная, дамп базы?! или там правки только в файлах?! Ссылка на сообщение Поделиться на другие сайты
SHKEd 0 Опубликовано 27 августа, 2020 Автор Жалоба Share Опубликовано 27 августа, 2020 16 часов назад, support сказал: Так а я хотел спросить, вот в git код который лежит, он же уже с новым модулем оформления, модули доставки, оплаты тоже исправлены там?! Нет, он там пересобран, дополнен. Пока собираю специально для вамшопа, чтобы уже был для движка, а не заточен под определенный сайт. Потому что сами модули доставки отличаются, и логика. Я как и обещал выдам код, когда он будет протестирован и проверен. Это уже более глобальный уровень, нежели делать для сайта) Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 27 августа, 2020 Жалоба Share Опубликовано 27 августа, 2020 51 минуту назад, SHKEd сказал: Нет, он там пересобран, дополнен. Пока собираю специально для вамшопа, чтобы уже был для движка, а не заточен под определенный сайт. Потому что сами модули доставки отличаются, и логика. Я как и обещал выдам код, когда он будет протестирован и проверен. Это уже более глобальный уровень, нежели делать для сайта) Хорошо, спасибо. Тогда жду. Ссылка на сообщение Поделиться на другие сайты
vitaly 1 Опубликовано 23 ноября, 2020 Жалоба Share Опубликовано 23 ноября, 2020 Здравствуйте! В Вамшопе уже работает такой функционал? Чтобы товары не в наличии (сток меньше или равно нулю) были в конце списка товаров? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 23 ноября, 2020 Жалоба Share Опубликовано 23 ноября, 2020 44 минуты назад, vitaly сказал: Здравствуйте! В Вамшопе уже работает такой функционал? Чтобы товары не в наличии (сток меньше или равно нулю) были в конце списка товаров? Здравствуйте! В VamShop 1 есть опция при редактировании категории в админке. Опция сортировка. Ссылка на сообщение Поделиться на другие сайты
vitaly 1 Опубликовано 23 ноября, 2020 Жалоба Share Опубликовано 23 ноября, 2020 Спасибо. Прошу прощения, ошибся версией. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 23 ноября, 2020 Жалоба Share Опубликовано 23 ноября, 2020 Не за что Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения