Views Exposed Filter - выдает миллиард скрытых фильтров

10 января 2019 в 16:06
Аватар пользователя Inkredo Inkredo 0 15

Добрый день. Ранее работал только с мелкими фильтрами. Вот столкнулся с проблемой, сам фильтр маленький, но терминов миллиард.

То есть у нас есть таксономия 3-хуровневая

-Страна
--Область
---Город

Терминов более 5 тыщ. Ну и нужно фильтр сделать по ним. Сделал раскрытый фильтр вювса, все ок. Но потом заметил что страница что то тупит.

Когда посмотрел исходный код, ужаснулся. Друпал оказывается все это выводит, просто скрывает стилями. Получаем такую портянку http://prntscr.com/m5d5s5.

Подскажите как сделать что бы как то динамично подгружало. То есть у нас есть 4 страны, Украина, РФ, Белорусь, Казахстан.

То должно быть так, в начале 4 опшина в селекте, потом при выборе страны области подгружаются и города.

Сейчас так и есть, сделал это через модуль Simple hierarchical select. Но как оказалось он делает это просто путем скрипта + цсса. То етсь на страницу изначально грузится все что есть, и потом просто стилизируется.

Кто то сталкивался с подобным?

Комментарии

gun_dose wrote:

А простой hierarchical select не пробовали?

Да, пробывал, в предпоследним абзаце про это написал. Он визуально стилизирует. То есть загружает весь список, и просто скриптом разбивает. То есть оно вроди визуально то правильно, но если посмотреть код, то ужас какой то)

10 января 2019 в 16:26

К счастью, старый добрый "статичный" HTML уходит на вечный покой.
Приходят новые react, vue и прочие angular-ы..

А там ajax - это нормально, в смысле норма и необходимость.
Интерфейсы становятся все более responsive и еще более smart.

Самое время начинать привыкать к хорошему, пусть даже при помощи jquery-)

12 января 2019 в 9:26

Phantom63rus wrote:

А как вы видите правильную логику работы?

Думаю по логие должно быть так. Изначально при загрузке страницы формируется в фильтр с 4 опшинов.

РФ
Ук
Бл
КЗ

Дальше при выборе какой то из стран, идеи подгрузка селекта с второго уровная.
И т.п.

Ну вы представьте если все страны мира загрузить. Так там словарь будет с 20-30 к строк, что их все должно на страницу грузить по вашей логике?

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

Или по вашему данная логика работы правильная, которая есть сейчас? И если нужно реалезовать такой фильтр на весь мир, то на страницу изначально нужно будет грузить 50 к терминов к примеру?

10 января 2019 в 16:43

adano wrote:

yreference_filter

но, структуру тогда, скорее всего придется переде

Разные, но работают так же, все через скрипты, просто визуальное оформления, для обычного пользователя бы пошло, но если глянуть внутрь то понимаешь что через попу получается.

За мудуль спс, не встречал, буду пробовать разбираться!!!

10 января 2019 в 16:48

На мой взгляд, если речь идёт о географии от уровня страны до уровня деревни, то надо использовать решения для географии, т.е. специальные поля, которые работают в связке с сервисами карт.

10 января 2019 в 17:13

Как вариант рассмотрите сменить фильтрацию с Exposed Filter на Search Api + Facet filters. Они и с SEO более дружелюбны, и проблема описанная вами уйдет.

11 января 2019 в 16:19