Всем привет! История такая.. Drupal 7. Делаю фотогалерею, в которой есть категории. При выборе категории должны загружаться фотографии данной категории с помощью ajax. Я создал несколько views (отдельно на каждую категорию) и при нажатии кнопки загружаю в контейнер необходимую ноду. Выглядит это примерно так.
При таком раскладе, все загружается, но не работает colorbox. Если я загружаю полностью страницу, то colorbox работает, но конфликтует с другим colorbox, который уже есть на страницу в другом блоке.
Очень хочется решить эту проблему не костылями. Может есть модуль, который умеет загружать ноды ajax`ом или любой другой способ...
Комментарии
В общем я думаю, что грузить целую страницу в другую - это не есть хорошо. Загружать только #block-system-main более правильно, как мне кажется... Но как тогда заставить работать colorbox?
Если Вы используете Views - он все сам умеет нормально Ajax'ифицировать.
Вам нужно было создать только 1 представление и добавить фильтр по категории. И выводить его передавая категорию в качестве аргумента.
Посмотрите этот гайд для примерного понимания работы.
Так же, поищите инструкции по Drupal AJAX API - у Вас не правильный (относительно Drupal) подход. Все подобные моменты имеют решения и описаны множество раз.
Спасибо за ответ! Сделал, то что хотел, с помощью модулей
Создал словарь таксономии с категориями фотогалереи, сделал одну вьюшку и подключил к словарю, с помощью TVI, потом настроил вывод фильтра ссылками, с помощью Better Exposed Filters. Все работает идеально и даже в код лезть не пришлось. А ну и ссылка "Показать еще", с помощью модуля Views Load More.