К содержанию

mSearch2 - поисковый запрос по двум input

Добрый день,

подскажите как для mSearch2 организовать поиск по двум input. Например, в одном чтобы вписывали Город, а в другом Кафе.
Bluetenstadt
Bluetenstadt
17 июня 2017, 12:57
modx.pro
2 515
Реклама

Комментарии: 17

man
man Старожил
18 июня 2017, 11:27
Наверное стоит использовать mfilter…
    Bluetenstadt
    Bluetenstadt Старожил
    18 июня 2017, 18:26
    Мне нужно из двух input создать запрос.
    Буду благодарен, если покажете как сделать это с mfilter.
      Владимир
      Владимир Старожил
      18 июня 2017, 18:31
      docs.modx.pro/components/msearch2/snippets/mfilter2
      Если вы не читали и не пробовали, то самое время почитать
      На MODHOST можно устанавливать демо-сайт с mSearch2
        Bluetenstadt
        Bluetenstadt Старожил
        18 июня 2017, 18:44
        Спасибо за рекламу, но я давно купил компонент.
        Сниппет реализует вторую половину компонента — фильтрацию найденных результатов.
        ???
          Владимир
          Владимир Старожил
          18 июня 2017, 18:47
          я ни чего не рекламирую
          Просто прочтите документацию mFilter2 (это часть компонента mSearch2 )

            Bluetenstadt
            Bluetenstadt Старожил
            18 июня 2017, 19:03
            Прочитал, ничего не нашел по теме, как склеить запрос из двух инпутов в один.
              man
              man Старожил
              18 июня 2017, 21:06
              Господи Иисусе!
              [[!mFilter2?
                          ........
                          &filters=`
                             tv|city,
                             tv|cafe
                             `
              		......
                       ]]
              Что именно не понятно в работе компонента?
                Bluetenstadt
                Bluetenstadt Старожил
                19 июня 2017, 00:41
                Я понял свою ошибку, извините. Мне не поиск ( всмыле фильтрация), мне передать из двух input значения нужно.

                <form  class="form-search" action="[[~3]]" method="get">
                	<div class="input-group">
                		<input type="text" class="form-control search-query" name="query" value="[[+mse2_query]]" placeholder="Город"  />
                <input type="text" class="form-control search-query" name="???" value="[[+mse2_query]]" placeholder="Кафе"  />
                		<span class="input-group-btn">
                		<button type="submit" class="btn btn-primary"> [[%search]]</button>
                		</span>
                	</div>
                </form>
                  Андрей
                  Андрей Старожил
                  19 июня 2017, 08:17
                  pdoResources и отбор результатов по where не пойдет?

                  Как-нибудь так
                  [[pdoResources?
                  	&where=`{"city:LIKE":"%[[!#.get.city]]%","cafe:LIKE":"%[[!#.get.cafe]]%"}`
                  ]]
                    Bluetenstadt
                    Bluetenstadt Старожил
                    19 июня 2017, 14:12

                    что-то в таком духе, передать в поиск из input'тов
    Василий Наумкин
    Василий Наумкин Администратор
    19 июня 2017, 16:11
    Тут нужно 2 поля с javascript autocomplete. Первое выбирает город, второе — кафе. Когда выбраны оба, идёт редирект на страницу кафе или что там еще надо.

    Делается это легко за полчаса, mSearch2 для такого совсем не нужен.
      Bluetenstadt
      Bluetenstadt Старожил
      19 июня 2017, 16:37
      Понятно, спасибо.
        Василий Наумкин
        Василий Наумкин Администратор
        19 июня 2017, 16:41
        webstartpage.ru — можно посмотреть готовый пример в выборе города для показа погоды.

        Исходники сайта есть на Github.
          Bluetenstadt
          Bluetenstadt Старожил
          20 июня 2017, 14:17
          Да спасибо, но это не то. Мне просто нужно с двух инпутов отправить query.
            Василий Наумкин
            Василий Наумкин Администратор
            20 июня 2017, 14:27
            Из 2х инпутов нельзя отправить одну строковую переменную. Но можно
            — отправить из 2х инпутов 2 переменные на произвольную страницу
            — запустить там сниппет, который получит эти 2е переменные
            — склеит их в одну и перешлёт юзера на страницу поиска с ней
            $modx->sendRedirect('/search?query=' . $query);
              Bluetenstadt
              Bluetenstadt Старожил
              20 июня 2017, 15:21
              То что доктор прописал, спасибо!
                Bluetenstadt
                Bluetenstadt Старожил
                25 июня 2017, 21:51
                Решил при помощи JS.
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        17