Автор Тема: Нестандарное наименование для стандартной сортировки  (Прочитано 23 раз)

02 Ноябрь 2017, 22:29:15
  • Новичок
  • *
  • Сообщений: 2
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Задача - стандартными функциями заставить стандартную сортировку "по наименованию" сортировать как надо.

Примеры сложных вариантов наименований:
  • ABC 10.10/10.10x10.10/10.10x10.10/10.110 ABC123 ABC123 ABC123
  • ABC 111.10/11.10x110.10/10.10x10.10/10.10 ABC123 ABC123 ABC123
  • ABC 111.111x1110.10x10.10 ABC123 ABC123 ABC123

1) PHP. Отдельная обрезка и преобразование каждого из чисел в формат при котором стандартная сортировка будет работать (10.10 => 0010.1000) - худший вариант, создаст лютую нагрузку на сервер из-за огромного кол-ва товаров. Хотя если это дело закешировать, то все не так уж плохо.
1.1) Обратный вариант преобразования из не читаемого в читаемый на фронте.
1.2) Подтянуть свойства товара, что не лучше преобразования наименования.

2) Задать альтернативное техническое наименование товара в бд для сортировки, вариант хороший, но упирается в обновление движка со всеми вытекающими (регулярное переписывание кода).

3) Создать отдельный "технический" язык и просто задать жесткую привязку сортировки к нему (минимальные регулярные правки кода после апдейта). Но мне неизвестно можно ли вообще делать технический язык и каких можно ждать подводных камней.

Подскажите какой вариант лучше?)
03 Ноябрь 2017, 10:15:31
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 14167
  • Репутация: +14571/-2
  • Сообщество PrestaShop
    • Просмотр профиля
Задача - стандартными функциями заставить стандартную сортировку "по наименованию" сортировать как надо.
С такой постановкой задачи все 3 пункта отпадают. Не стандартными можно решить.
03 Ноябрь 2017, 10:36:31
Ответ #2
  • Ветеран
  • *****
  • Сообщений: 21057
  • Репутация: +25282/-0
  • Prestashop - просто и эффективно
    • Просмотр профиля
Все что написано относится к поиску. В prestashop есть псевдонимы, преобразования, но только в поиске. В стандарном методе сортировки менятся только направление
ORDER BY name [ASC | DESC]
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!