Здравствуйте, решил, что картинки в быстром выводе результатов mSearch это очень удобно для посетителей, они могут увидеть картинку товара или статьи, что очень удобно.
Долго мучился с получением значения image из TV поля, в итоге все сделал, но результаты в быстром выводе повторяются 2-3 раза.
Для получения данных приходится использовать pdoPage и кастомный шаблон вывода.
Возможно, кто-нибудь делал такое же и подскажет как убрать повторения, так понимаю кривой вызов pdoPage и создает дубли.
Думал выложить принтскрин того как это работает, но сайт не дает загрузить картинку.
Картинки в быстрых результатах поиска mSearch
Версия MODX: Revolution
Комментарии (5)
Для добавления комментариев вы должны авторизоваться или зарегистрироваться.
Павел Романов 14.04.2020 11:00 #
Просто вызов (пробелы только уберите):
В чанке search_tpl:
На странице с результатами поиска можно так же, либо как в документации:
Тут уже чанк как для msProducts.
Артем 14.04.2020 11:14 #
В общем-то все сделал, все работает как надо. Для реализации нужен кастомный шаблон для вывода tpl.mSearch2.ac и подключение вывода TV поля с картинками, в итоге получаем красивый и эффективный поиск.
Павел Романов 14.04.2020 11:32 #
Для автокомплита используется сниппет mSearchForm.
Он по умолчанию не понимает картинок товаров (если у Вас miniShop2 и изображения из его галереи).
Поэтому в чанке tpl.mSearch2.ac (копии) просто используете конструкцию:
Она выводит путь к картинке товара (из галереи), либо путь из TV image (подробности).
Также он поддерживает стандартный механизм pdoTools для вывода TV-шек через &includeTVs=`image`. Тогда в чанке просто
Артем 14.04.2020 15:31 #
В моей версии генерируются легкие превьюшки, которые грузятся моментально. Восприятие результатов поиска с картинками намного лучше, скажем так мозг быстрее находит желаемое именно по картинке, а текст подтверждает. Завязал поиск товаров и статей, теперь пользователь может получить максимум информации по одному запросу.
Павел Романов 14.04.2020 15:47 #
Везде все кешируется, так что будет быстро.