Поиск через URL
Всех Приветствую!
С Modx Revo недавно, прошу совета:
1. Сделал мультиязычность через контекст. Спасибо, Василию!
2. Реализовал поиск на странице путем обращения из Javascript к ресурсу в Modx(возвращает Json).
Теперь мне необходимо сделать обращение к поиску извне.
Например: www.site.com/en/ЧтоНадоНайти Или www.site.com/ЧтоНадоНайти
Пока нашел вот такой вариант: Ссылка
Тут понял, что, может быть, не так реализовал поиск изначально: Пользователь вбивает строку для поиска и данные отправляются в ресурс. Ответ, в виде Json, преобразуется в таблицу результатов на клиенте. То есть как таковым выводом со стороны Modx я не управляю.
Подскажите алгоритм — как в modx можно реализовать поиск из Url?
С Modx Revo недавно, прошу совета:
1. Сделал мультиязычность через контекст. Спасибо, Василию!
2. Реализовал поиск на странице путем обращения из Javascript к ресурсу в Modx(возвращает Json).
Теперь мне необходимо сделать обращение к поиску извне.
Например: www.site.com/en/ЧтоНадоНайти Или www.site.com/ЧтоНадоНайти
Пока нашел вот такой вариант: Ссылка
Тут понял, что, может быть, не так реализовал поиск изначально: Пользователь вбивает строку для поиска и данные отправляются в ресурс. Ответ, в виде Json, преобразуется в таблицу результатов на клиенте. То есть как таковым выводом со стороны Modx я не управляю.
Подскажите алгоритм — как в modx можно реализовать поиск из Url?
Комментарии: 3
Че то ссылку не вижу сайт, а то не понятен вопрос.
Делаете ресурс (например, /search или /en/search), на котором вызываете сниппет, возвращающие данные в нужном виде. Отправляете запросы на /search/query. С помощью VirtualPages (или собственного плагина на OnPageNotFound) настраиваете обработку таких адресов, чтобы ими занимался созданный ранее ресурс /search. Больше объяснять нечего.
Все правильно, вешайте обработчик на OnPageNotFound, режьте последний параметр урла и в запрос. И выводите результаты поиска, а если результатов 0 то просто пинайте на 404 ошибку. Я бы наверно так сделал.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.