Wenn ich den aktuellen Knotentitel in page.html.twig anzeigen möchte (standardmäßig scheint er nur in node.html.twig verfügbar zu sein), muss ich eine Vorverarbeitungsfunktion wie die folgende erstellen:
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;
}
}
Und dann muss ich page-title.html.twig überschreiben, indem ich es in meinen aktuellen Themenordner kopiere und alles auskommentiere.
Das scheint nicht "richtig" zu sein. Gibt es einen besseren Weg?
node
ist nurNULL
. Gibt es eine Möglichkeit, einen Seitentitel abzurufen, einschließlich des Titels der Startseite (auch wenn eine Titelüberschreibung verwendet wird)?page['#title']
, ich bin nicht sicher, ob dies eine von VIews vorgenommene Überschreibung enthalten würde (aber wahrscheinlich)page['#title']
ist hier ein leerer String drinpage.html.twig
.Sie können die folgenden Codes zum Anfang des
node.html.twig
Vorlagenordners Ihres Themas hinzufügen :quelle
Der Drupal 8-Code für die Ausführung des angezeigten Codes ist der folgende.
quelle