Поиск по тегам для DLE 12.1

Илья7 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
20.04.2018

Нужен поиск по тегам для DLE 12.1

Суть задачи:

В допполях создается несколько полей, например "Цвет",

"Форма", "Рисунок", "Стиль" и другие.

Сейчас полей нужно 7. Но нужно предусмотреть свободное добавление новых полей.

Поле может быть типа «Текст».

При добавлении новости, в некоторых полях задается несколько значений, через

запятую.

Поиск нужен в нескольких определенных категориях. Также нужна функция поиска по

всем подкатегориям всех уровней в определенной категории.

Форма поиска:

В скобках - количество совпадений тегов в новостях

Цвет:

синий (256)

красный (117)

желтый (210)

зеленый (55)

Форма:

квадрат (89)

круг (56)

овал (28)

треугольник (21)

Рисунок:

полоски (45)

абстракция (68)

сплошной цвет (77)

Стиль:

модерн (22)

классика (56)

Изначально на странице видны все теги по блокам (в каждом отдельном блоке

расположены теги из одного дополнительного поля в админке). То есть если у нас

в админке задано 7 допполей, то и блоков для поиска также будет 7. Нужен тег,

чтобы эти блоки расставить по дизайну – Что-то вроде {tag_search: 1}, {tag_search: 2}.

Плюс отдельный тег для вывода результатов, или ваше предложение.

Как только выбран один тег, то на странице остаются только те новости, которые

имеют совпадение вхождения по данному тегу.

Рядом с остальными тегами меняются цифры на количество новостей, в которых есть

совпадения тега с учетом уже выбранного.

И так до тех пор, пока пользователь не сделает свой выбор.

В случае, если в каком-то разделе количество тегов равно 0, то появляется

надпись "Объекты не найдены".

Также необходима возможность отказаться от выбора какого-либо тега.

Выбранные теги располагаются в отдельном блоке (который тоже должен выводиться тегом). Рядом с ними расположен «х». При нажатии на него, соответствующий тег удаляется, а результаты поиска обновляются с учетом оставшихся тегов.

Модуль не должен использовать стандартное поле тегов.

У меня оно уже используется, поэтому поиск, который мне нужен должен работать

на другой странице.

Соответственно адрес страницы должен быть что-то вроде site.ru/search

Крайний срок представления результата - понедельник, 23.04.2018. до 18-00.

Заявки фрилансеров