Рейтинг:1

Программно загружать одно и то же представление несколько раз с разными значениями контекстных фильтров.

флаг cn

Я пытаюсь загрузить представление X раз, но каждый раз с другим значением контекстного фильтра. Мой код генерирует правильное количество блоков просмотра, но все они одинаковы. Все они соответствуют первому переданному значению. Вот мой код (в hook_preprocess_node):

  если ($node->getType() == 'родительский'){
    $parent= $node->field_data_taxonomy->getValue()[0]['target_id'];
    $terms = \Drupal::entityTypeManager()->getStorage('taxonomy_term')->loadChildren($parent);
    foreach($terms как $term){
      $pname = $term->get('имя')->значение;
      $tid = $term->get('tid')->значение;
      $аргументы = [$tid];
      $view = \Drupal\views\Views::getView('vue_datas');
      если (is_object($view)) {
        $view->setArguments($args);
        $view->setDisplay('block_a');
        $view->preExecute();
        $просмотреть->выполнить();
        $content = $view->buildRenderable('block_a', $args);
        $variables['view_datas'][] = $content;
      }
    }
  }

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

Любой совет? Спасибо.

steve avatar
флаг in
Это может быть связано с [этим вопросом] (https://drupal.stackexchange.com/questions/307728/render-view-inside-block-with-caching), хотя я не уверен. Я борюсь с чем-то подобным, когда я несколько раз отображаю одно и то же представление с разными дисплеями и аргументами.В каждом случае для каждого последующего блока используются только первые значения.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.