Se eu quiser mostrar o título do nó atual em page.html.twig (por padrão, parece estar disponível apenas em node.html.twig), tenho que criar uma função de pré-processo, da seguinte forma:
function theme_preprocess_page(&$variables, $hook) {
// Set our page title so we can access it in page.html.twig
if ($node = \Drupal::routeMatch()->getParameter('node')) {
$variables['my_node_title'] = $node->title->value;
}
}
E então eu tenho que sobrescrever page-title.html.twig, copiando-o na minha pasta de temas atual e comentando tudo.
Isso não parece "certo". Existe uma maneira melhor?
node
é justoNULL
. Existe uma maneira de obter qualquer título de página, incluindo o título da primeira página (mesmo quando uma substituição de título é usada)?page['#title']
, não tenho certeza se isso conteria alguma substituição feita pelo VIews (mas provavelmente)page['#title']
há uma string vaziapage.html.twig
aqui.Você pode adicionar os códigos abaixo à parte superior da
node.html.twig
pasta de modelos do seu tema:fonte
O código do Drupal 8 para fazer o que o código mostrado deve fazer é o seguinte.
fonte