Drupal → Как в Views программно изменить view mode выводимых сущностей по данным из cookie?

14.09.2022
/**
 * Implements hook_views_pre_view().
 */
function MODULENAME_views_pre_view(ViewExecutable $view, string $display_id, array &$args): void {
  if ($view->id() == 'my_views') {
    $row_options = $view->display_handler->getOption('row');
    $row_options['options']['view_mode'] = \Drupal::request()->cookies->get('my_views_view_mode', 'teaser');
    $view->display_handler->overrideOption('row', $row_options);
  }
}
Написанное актуально для
Drupal 8+
Похожие записи

Добавить комментарий