Как реализовать выборку по городу и региону? Новый

Дополнение: mSearch2

Всем привет, кто то уже делал сайт по недвижимости или что то подобное?
Как реализовать выборку по городу и региону?
Это можно сделать с помощью mSearch2? Или надо что то другое искать?
Если такого решения нет, то за сколько готовы взяться за такую работу?
Всем заранее спасибо!
24 сентября 2016, 11:25    Сергей   
0    311 0

Комментарии (12)

  1. Павел Романов 24 сентября 2016, 11:42 # +1
    Смотря, что Вам требуется.
    Если нужна фильтрация предложений на странице каталога, то да — можно использовать mSearch (вернее, mFilter, идущий с ним в комплекте).
    Если достаточно просто списка предложений на страницах городов/регионов, то хватит TV и какого-нибудь сниппета, выводящего ресурсы (getResources, pdoResources, getProducts и т. д.).
    1. Сергей 24 сентября 2016, 12:44 # 0
      Спасибо за ответ! Нужно, что бы посетитель сайта смог найти нужный ему объект с выбором города и региона. Можно как то сделать что бы по умолчанию фильтр с городом был уже активен и выбран какой то город определенный?
      1. Павел Романов 24 сентября 2016, 12:58 # +1
        Страницу фильтрации, можно открывать сразу с параметром:
        http://site.ru/catalog/?city=Москва

        Параметр и значение зависят от реализации. Это может быть как название города, так и ID ресурса или еще какой уникальный идертификатор.
        1. Сергей 24 сентября 2016, 13:47 # 0
          Спасибо! Попробую!
          1. Роман Садоян 24 сентября 2016, 15:26 # 0
            Павел, а если необходимо организовать более 14 городов.
            Где у каждого города свои ресурсы.
            Использовать контексты? И если использовать контексты, то как быть с Ajax запросами, когда JS обращается по ссылке к ресурсу с пустым шаблоном, где вызывается сниппет, который отрабатывает этот ajax запрос и выдает результат.
            В случае с контекстами url будут следующими: site.ru/msk/ site.ru/spb/ придется плодить данные ресурсы в каждом контексте или обращаться в один контекст?
            1. Павел Романов 24 сентября 2016, 16:05 # +1
              Домен у Вас один — зачем разносить города по разным контекстам?
              Сделайте 14 контейнеров-городов с объектами внутри. Хотите, в общем контексте, хотите вынесите в отдельный для удобства.
              Фильтровать в общем каталоге можно по родителю.
              Если нужно, ресурс со сниппетом для Ajax-запроса можете сделать в любом контексте.
              1. Роман Садоян 24 сентября 2016, 16:10 # 0
                Затем, что разграничить доступ к админке для разных городов проще и лучше с контекстами, чем ресурсами.

                Тогда как я буду строить меню для каждого контекста? Мне нужно будет строить до родительского ресурса — получается я буду плодить чанки и шаблоны.
                1. Павел Романов 24 сентября 2016, 16:29 # +1
                  Тогда так и делайте: контекст = город.
                  Про чанки и шаблоны не совсем понял. Без описания структуры меню (есть ли общие для каждых городов страницы, например) сложно сказать что-то конкретное.
                  1. Роман Садоян 24 сентября 2016, 16:48 # 0
                    Общие страницы есть, например Реклама, Контакты, Подукция.
                    Далее идут города каждый со своими страницами.

                    В случае с чанками, для того, что бы построить меню от Города до ресурса, мне бы пришлось указывать, что самый первый элемент это контейнер нужного города.
                    Из-за этого мне бы пришлось использовать разные шаблоны и чанки для городов, а это слишком много. А в случае с контекстом с parent =0 и всё.
                    Если я не прав, то подскажи как быть.
                    1. Павел Романов 24 сентября 2016, 17:15 # +1
                      Если общие страницы одинаковые, то можно вынести их в основной контекст:
                      Web
                          О компании
                          Новости
                          Контакты
                      ...
                      
                      Город 1
                          Объект 1
                          Объект 2
                      ...
                      
                      Город 2
                          Объект 1
                          Объект 2
                      ...

                      И в сниппетах просто указывать, откуда забирать ресурсы:
                      [[pdoMenu?
                      &context=`web`
                      ...

                      Если же у каждого контекста своя структура с различными разделами (например, новости только для этого города, контакты и т. д.):
                      Город 1
                          Новости (5)
                              Новость 1 (6)
                              Новость 2 (7)
                              Новость 3 (8)
                              ...
                          Контакты (9)
                          Каталог (10)
                              Объект 1 (11)
                              Объект 2 (12)
                          ...
                      
                      Город 2
                          Новости (13)
                              Новость 1 (14)
                              Новость 2 (15)
                              Новость 3 (16)
                              ...
                          Контакты (17)
                          Каталог (18)
                              Объект 1 (19)
                              Объект 2 (20)
                          ...

                      то можно использовать настройки контекста. В случае, допустим, с новостями добавляете у каждого параметр page_news, где указываете ID страницы «Новости» этого контекста-города. В примере выше для первого это 5, для второго — 13 и т. д.

                      Тогда в общем (единственном) шаблоне в вызовах просто пишете:
                      &parents=`[[++page_news]]`

                      Для меню же вообще не указываете контекст — по умолчанию выводится все из текущего.
                      1. Роман Садоян 25 сентября 2016, 01:38 # 0
                        Хоть вопрос был и не про контексты, а в случае если для каждого города создать ресурс-контейнер с его именем, но всё равно спасибо, буду юзать контексты.

                        P.S. Плюсанул все комменты =)
                        1. Павел Романов 25 сентября 2016, 11:50 # 0
                          Я про контексты написал из-за Вашей фразы:
                          Затем, что разграничить доступ к админке для разных городов проще и лучше с контекстами, чем ресурсами.

                          Если же ресурсами-контейнерами, то выше )).
        Вы должны авторизоваться, чтобы оставлять комментарии.