Пример кода как рендерить блок views с программной установкой contextual filters.
Контекстные фильтры устанавливаются методом ViewExecutable::setArguments(array $ARGS). В примере я передаю пару аргументов в качестве значений контекстных фильтров.
|
|
use Drupal\views\Views; $view = Views::getView('VIEW_MACHINE_NAME'); $arg_1 = ....; $arg_2 = ....; if (is_object($view)) { $view->setDisplay('block_1'); $view->setArguments([$arg_1, $arg_2]); $view->execute(); $rendered_view = $view->render(); print $rendered_view; } |
Drupal 8/9 модуль views
Данная запись опубликована в 30.08.2021 19:32 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Октябрь 12, 2021 г.
Типичная проблема сайта, когда тот оказывается за балансировщиком нагрузки (load balancer), это несоответствие части заголовков запроса клиента и тех заголовков, которые передаются балансировщиком серверу. Чаще всего мы сталкиваемся с этим при запуске ...
Читать
Август 5, 2021 г.
В Drupal 7 вы могли использовать функцию l($text, $url, $options) для генерации HTML кода тега <A>. В Drupal 9 подход коренным образом изменился, и прямого "наследника" устаревшей функции нет.
Чтобы получить примерно тот же функционал придется ...
Читать
Май 22, 2021 г.
Подгрузка данных с сервера (например, при изменении параметров фильтра) происходит с небольшой задержкой, потому пользователь может не понять, среагировал как то сайт или нет на его действия.
Задача состоит в том, чтобы показать, что идет загрузка ...
Читать
Август 31, 2021 г.
Рассмотрим пару кейсов, того как рендерить блок из вашего кода.
Блок существует как Entity
Вы создали произвольный блок через Manage->Structure->Block ...
Читать