Feldvorlage für den Anzeigemodus


8

Ich habe eine Vorlage für mein Fachgebiet : field--field-category.html.twig. Gibt es eine Möglichkeit, dies für einen bestimmten Anzeigemodus zu überschreiben? A haben einen Modus namens teaser block. Ich habe es field--teaser-block--field-category.html.twiggenauso gut versucht wie ein paar andere Formate.

Ich weiß, dass ich ändern kann, wie das Feld ausgegeben wird, node--teaser-block.html.twigaber ich möchte es auf der Ebene der Feldvorlagen tun.


Das Beste ist, das Debuggen von Twig-Vorlagen zu aktivieren und Kint zu entwickeln und daraus Ihren Hook zu formulieren. Ich habe kürzlich einen Beitrag dazu geschrieben.
Danny Englander

Antworten:


15

Für die Feldvorlage gibt es standardmäßig keinen Vorschlag für den jeweiligen Anzeigemodus.

Sie können diesen Vorschlag in einen Haken einfügen:

function MYTHEME_theme_suggestions_field_alter(&$suggestions, $variables) {
  $suggestions[] = 'field__' . 
    $variables['element']['#field_name'] . '__' . 
    $variables['element']['#view_mode'];
}

Fügen Sie dies in MYTHEME.theme im Themenverzeichnis ein.


1
Gutes Zeug. Aber ich denke, um an der Namenskonvention von D8 festzuhalten, sollten Sie es wirklich schaffen$suggestions[] = 'field__node__' . $variables['element']['#field_name'] . '__' . $variables['element']['#bundle'] . '__' . $variables['element']['#view_mode'];
Matt Fletcher
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.