Вывод характеристик InstantShop по id

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО InstantCMS 1.X
#1 29 сентября 2023 в 13:30

Добрый день. Столкнулась с такой проблемой, что при редактировании или добавлении характеристики в InstantShop (первая ветка движка), порядок всех характеристик в карточке товара сбивается (что в админке, что на сайте). Как сделать их вывод хотя бы по id? 

#2 29 сентября 2023 в 16:58

В файле components\shop\model.php в строках 1068 — 1086 есть такой запрос:

  1. $sql = "SELECT chars.id as id,
  2. chars.published as published,
  3. chars.title as title,
  4. chars.fieldtype as fieldtype,
  5. chars.fieldgroup as fieldgroup,
  6. chars.is_compare as is_compare,
  7. chars.is_filter as is_filter,
  8. chars.is_filter_many as is_filter_many,
  9. chars.`values` as `values`,
  10. chars.bind_all as bind_all,
  11. chars.units as units,
  12. bind.ordering as ordering
  13.  
  14. FROM cms_shop_chars chars, cms_shop_chars_bind bind
  15.  
  16. WHERE bind.cat_id={$cat_id} AND
  17. bind.char_id = chars.id
  18.  
  19. ORDER BY bind.ordering ASC";
  20.  

поменяйте в нем последнюю строку на это

  1. ORDER BY chars.ordering ASC";
Добавлено спустя 7 минут

Есть ещё подобный запрос в строках 557 — 574. Там тоже надо подправить последнюю строку.

#4 30 сентября 2023 в 17:32

Посмотрел в коде да строка 547 сортировка свойств по значению сортировки, и если вы заменяли значит все должно было сработать. Если не работает значит у вас модифицированный файл model.php и нужно смотреть по его коду почему сортировка у вас слетает.

#5 30 сентября 2023 в 20:10

в админке выстроились, а вот на странцие товара к сожалению нет

#6 1 октября 2023 в 10:59

Ну тут только смотреть как происходит вывод у вас в шаблоне ибо можно будет долго гадать почему не сохраняется сортировка для свойств.

#7 9 октября 2023 в 20:30

В строках ~557 — это вывод на странице товара.
В строках ~1068 — в админке. 
Пробовала даже на дефолтных файлах. Помогло полное удаление ORDER BY bind.ordering ASC в строках 557

Спасибо за отзывчивость и помощь!

Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.