Приветствую!
Подскажите пожалуйста как решить задачку и решаема ли она.
Есть панель-пейдж, которая будет использоваться клиентом как некий шаблон. Который вроде как получается выводить модулем через:
// заполняем аргументами ...
return panels_render_display($panel);
Но застрял на 2ух вопросах:
1. Не получается впихнуть свои контексты в объект $panel что-бы их админ мог юзать в содержимом панели.
2. Как передать контексты аргументом в вьюсы на панели.
Спасибо!
Комментарии
1. Не понимаю, зачем панель выводить ещё отдельно модулем? Там из коробки всё прекрасно с контекстами.
2. Включите модуль views content, это подмодуль ctools, он позволяет создавать вьюхи как фрагменты панели, тогда во вьюсах появляется возможность указывать, откуда брать контекстные фильтры, есть несколько способов, как их взять из панели.
за views content спасибо.
количество материал не определенно > 1*10^X. По некой маске пути проверяется логическое наличие контента - если есть - собирается материал, и выводится панелью.
Вам нужен page_manager - объявляете в нем роут с аргументами: path/%arg1/%arg2/%etc
Там же задаете условия, при которых отображать ту или иную панель, можно подтянуть необходимый контекст, ну и т.д.
И всеравно, как-то все сложно..
Что-то мне подсказывает, можно проще.
Наверное с категоризацией материалов что-то не так..
Более чем уверен, что при данном объеме информации - согласился бы с Вами и пришел к такому же выводу !
Дело в том, что материалов нет, как таковых...
Попробую отстраненным примером: есть 1 000 терминов = числа.
каждая страница = описание арифметических действий между двумя терминами (327*951, 327/951, 327+951 и 327-951), если надет изображение - то и иллюстрации и т.д.
Можно конечно нарендерить 1 000 000 нод
Но мне кажется заказчик прав - логичнее, практичнее и удобнее генерировать эти страницы с обработкой исключений.
В том и загвоздка - в пути не будут присутствовать необходимые аргументы!
по принятым аргументам собирается инфа - и по логике, уже отдается или панель, или свой интерфейс, или просто нода.
А каким образом передаются аргументы?
В пути присутствуют аргументы. Проверяю данные, Если есть исключение - отдаю ноду, Если комбинация правильная - запрашиваю нужные параметры, скармливаю их панели и отдаю ее, Если все мимо - посылаю в 404
Вам надо просто пару ctools-плагинчиков написать для панелей и прочих вьюсов.
Вот неплохой обзор: http://drupalace.ru/lesson/pishem-plagin-k-panels-s-pomoshchyu-ctools
Спасибо!
нашел обходной путь, попробую его...
Но возможно пойду Вами предложенным!