Wie kann ich mit Twig die Zusammenfassung des Körperfelds zur Verwendung in einer Vorlage erhalten?


10

Ich habe also einen Textbereich mit Zusammenfassung und möchte die Zusammenfassung vor dem Inhalt anzeigen. Wenn ich also nur {{ content.body }}den Text verwende, wird er ohne Zusammenfassung angezeigt.

Wie kann ich die Zusammenfassung erhalten?

{{ content.body.summary }} scheint den Trick nicht zu tun

Antworten:


4

In Ihrer THEME.theme-Datei können Sie sie auch einfach definieren:

function THEME_preprocess_node(&$variables) {
$variables['node_teaser'] = $node_array['body'][0]['summary'];
}

Und dann zeigen Sie es mit:

{{ node_teaser }}

18

Der einzige Weg, wie ich das lösen konnte, ist:

Wenn Sie nur auf den Wert der Zusammenfassung abzielen möchten, können Sie auf die Entität abzielen, auf der Sie sich befinden. Wenn Sie sich auf einem Knoten befinden, können Sie Folgendes tun:

node.body.summary

In einem Absatz

paragraph.field_body.summary

Sie können den Inhalt der Zusammenfassung auch wie folgt abrufen:

content.body['#object'].body.summary

Nicht großartig, wird aber vorerst reichen.


2
Dies ist die einzige Möglichkeit, das Knotenobjekt zu verwenden, da content.bodydas Render-Array des Body-Felds so ist, wie Sie es im Ansichtsmodus konfiguriert haben. Wenn Sie es nicht geändert haben, wird die vollständige Ansicht gerendert.
4k4

1

Um auf dem aufzubauen, was 4k4 geschrieben (und für 2018 aktualisiert) hat:

Sie wählen zuerst die Art und Weise, wie das Feld formatiert werden soll, und drucken es dann aus.

1) Gehen Sie zu Struktur> Inhaltstypen> IHR INHALTSTYP> Anzeige verwalten> IHR ANSICHTMODUS.

2) Wählen Sie in der Spalte "Formatierer" die Option "Zusammenfassung oder Beschnitten".

3) Speichern.

4) In Ihrer Zweigdatei sollten Sie nur {{body}} drucken können (dies funktioniert bei mir, aber korrigieren Sie mich, wenn ich falsch liege und ich aktualisiere).

Dies funktioniert bei Verwendung des Knotens in einem Ansichtsblock und sollte auch auf dem Knoten funktionieren.


+1 Dies ist der ideale Weg, um den Inhalt zu kürzen. In diesem Fall kann der Site-Administrator das Trimmlimit konfigurieren, ohne dass eine Entwicklerhilfe erforderlich ist.
Aryashree Pritikrishna

0

Ich habe es durch einfaches Verwenden zum Laufen gebracht

{{ content.field_description['#items'][0].summary }}

wobei mein Beschreibungsfeld field_description ist

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.