@photosho

Сортировка товаров по geo-координатам возможна в Bitrix?

Необходимо реализовать определение geo-координат пользователя и затем отсортировать товары в каталоге так, чтобы на первом месте были товары, расположенные в городе, из которого зашел посетитель. В Bitrix такое возможно? Насколько я знаю, "из коробки" такой функционал не предоставляется, но, возможно, есть какие-нибудь модули? Либо, подскажите, как можно было бы сделать "своими силами".
  • Вопрос задан
  • 84 просмотра
Пригласить эксперта
Ответы на вопрос 2
В Bitrix такое возможно?

Что значит "возможно в Btirix"? Bitrix написан на php, а php тьюринг-полный, поэтому возможно даже операционку на нем написать.

Штатно ничего подобного нет. Модулей тоже не знаю.

Наверное есть несколько путей реализации, в зависимости от ваших требований.

Ну например если у вас всего скажем 5 городов в которых вы работаете, то можно завести у товаров 5 свойств и заранее проставить в этих свойствах удаленность от каждого города. В дальнейшем сортировать по такому свойству в зависимости от города.

Если допустим у вас городов не ограничено но нужна не сортировка, а то что вы описали - сначала вывести товары в данном городе, а затем все остальные, и к каждому товару привязан город, то я бы предложил выводить в два приема товары - сначала все товары из текущего города, и отдельным компонентом все остальные.

Т.е. важно сначала:
1 Понять что вы называете сортировкой и что вам нужно.
2 Разобраться какие могут быть геопозиции у пользователя - города ли это или координаты и ограничено ли их число.
3 Разобраться как вы можете хранитрь позиции товаров - опять же города это или координаты или что-то иное.

Потом думать.
Ответ написан
serginhold
@serginhold
Через гет-листы практически никак. Только самописным запросом, типа того:

order by
if (location = {$id}, 0, 1) asc

(Sql знать надо и т.д. и т.п.)

---

Ещё как костыльный вариант сделать столько свойств, сколько локаций на сайте, и всем выставлять 0 или 1, типа да или нет
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы