Я не смог получить добавление контекста кеша для работы с сущностями в drupal 8. В частности, я собираюсь использовать заголовки: User-Agent. Я попробовал много вариантов следующего в модуле.
use Drupal\node\NodeInterface;
use Drupal\Core\Entity\EntityInterface;
use Drupal\Core\Entity\Display\EntityViewDisplayInterface;
function hook_entity_view_alter(&$build, EntityInterface $entity, EntityViewDisplayInterface $display){
if($entity->getType() == 'relevant_type'){
$build['#cache']['contexts'][] = 'headers:User-Agent';
}
}
Я пытаюсь проверить доступ к узлу при изменении этого контекста. Я также попробовал это в hook_entity_build_defaults_alter()
функции.