Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Themes & Theming ›

[gelöst] Feldinhalt im page-template ausgeben

Eingetragen von jens78 (40)
am 18.06.2016 - 17:06 Uhr in
  • Themes & Theming
  • Drupal 8.x

Hallo,

ich möchte den Inhalt eines image Feldes (head_img) im page Template ausgeben.

Ich habe es so

{{ content.field_head_img }}

versucht, hat aber leider nicht funktioniert. Könnt ihr mir sagen ob und wie es möglich ist Feldinhalte ausserhalb des node Templates auszugeben?

Vielen Dank im voraus

Jens

‹ Menüleiste am Smartphone nicht sichtbar [gelöst] Feldinhalt im page-template ausgeben ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

wenn das Image in diesem content enthalten ist

Eingetragen von ronald (3857)
am 19.06.2016 - 08:23 Uhr

kannst du es so ausgeben.

Was hast du aber genau vor?
Vielleicht versuchst du etwas zu programmieren, was Drupal von selbst schon tut?

Bedenke auch, dass du die Caches leeren musst, wenn du am Template Änderungen vorgenommen hast.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich möchte unterhalb des

Eingetragen von jens78 (40)
am 19.06.2016 - 18:20 Uhr

Ich möchte unterhalb des Headers ein Bild ausgeben, welches über die gesamte Seitenbreite geht. Der nodeinhalt selbst ist nur 1180px breit.

Der code im Template sieht so aus:

<div> <h1>Test</h1> {{ content.field_head_img }} </div>

im Quelltext der Seite erscheint aber nur:

<div> <h1>Test</h1>  </div>

Innerhalb des node-content wird das Bild so ausgegeben:

<div data-quickedit-field-id="node/1/field_head_img/de/full" class="float-none field field-node--field-head-img field-name-field-head-img field-type-image field-label-above has-single">
      <h3 class="field__label align-center">head_img</h3>
              <figure class="field-type-image__figure image-count-1 align-center">
          <div class="field-type-image__item">
       
<img src="/sites/default/files/2016-06/image_0.jpg" width="3275" height="1458" alt="image" typeof="foaf:Image" />
</div>
    </figure>
  </div>

Den cache habe ich mit drush cr gelöscht.

  • Anmelden oder Registrieren um Kommentare zu schreiben

jens78 schriebIch habe es so

Eingetragen von glycid (921)
am 21.06.2016 - 09:30 Uhr
jens78 schrieb

Ich habe es so

{{ content.field_head_img }}

versucht, hat aber leider nicht funktioniert.

Das kann auch nicht funktionieren, denn das $content array steht im Page Template gar nicht zur Verfügung. Guck mal in deinem Theme nach der DEINTEHME.theme Datei. Hier müsstest du in einem preprocess_page() hook das Image dem vars array hinzufügen:

DEINTEHME_preprocess_page(&$variables) {
  $variables['field_head_img'] = 'code zum bild holen'; // In D7 wurde das mit field_get_items() gemacht, in D8 hat sich das geändert.  Hier einfach im preprocess_node() gucken, wie der Code ist
}

Im Page Template dann:

{{ field_head_img }}

Alternativ kannste das markup im Template auch direkt ausgeben:

{{'<img src="/pfad/zu/deinem/image.png">'}}

  • Anmelden oder Registrieren um Kommentare zu schreiben

Vielen Dank für deine

Eingetragen von jens78 (40)
am 21.06.2016 - 11:29 Uhr

Vielen Dank für deine Antwort.

Zitat:

Hier einfach im preprocess_node() gucken, wie der Code ist

Ich habe mir den entsprechenden Code angesehen, komme da aber nicht weiter. Weil ich eigentlich gar nicht verstehe, was dort passiert :-(

/**
* Preprocess variables for node templates.
* @param $variables
*/
function at_core_preprocess_node(&$variables) {
  $theme = \Drupal::theme()->getActiveTheme()->getName();
  $config = \Drupal::config($theme . '.settings')->get('settings');
  $node = $variables['node'];

  // Extension settings
  if (isset($config['enable_extensions']) && $config['enable_extensions'] === 1) {
    if (isset($config['enable_shortcodes']) && $config['enable_shortcodes'] === 1) {
      if (!empty($config['nodetype_classes_' . $node->getType()])) {
        $shortcodes = Tags::explode($config['nodetype_classes_' . $node->getType()]);
        foreach ($shortcodes as $class) {
          $variables['attributes']['class'][] = Html::cleanCssIdentifier($class);
        }
      }
    }
  }

  // Header and Footer attributes.
  $variables['header_attributes'] = new Attribute(array('class' => array()));
  $variables['footer_attributes'] = new Attribute(array('class' => array()));

  // SEE https://drupal.org/node/2004252 or a follow up issue.
  if ($variables['display_submitted']) {

    // Add a class to the header if submitted is active, so we can theme dynamically.
    $variables['header_attributes']['class'][] = 'node__header--has-meta';

    // Initialize new attributes arrays.
    $variables['meta_attributes'] = new Attribute(array('class' => array()));
    $variables['meta_attributes']['class'][] = 'node__meta';

    $variables['submitted_attributes'] = new Attribute(array('class' => array()));
    $variables['submitted_attributes']['class'][] = 'node__submitted';

    // Add a class if author picture is printing.
    // TODO - does this break the entity render cache?
    if ($author_picture = \Drupal::service('renderer')->render($variables['author_picture'])) {
      // TODO - does this fail if twig debugging is on?
      if (!empty($author_picture)) {
        $variables['meta_attributes']['class'][] = 'node__meta--has-author-picture';
      }
    }
  }
}

  • Anmelden oder Registrieren um Kommentare zu schreiben

Lösung

Eingetragen von jens78 (40)
am 24.06.2016 - 16:26 Uhr

Ich hab die Lösung gefunden. Die Felder sind doch im page-Template verfügbar.

Mit diesem Code wird das Bild ausgegeben:

<img src="{{ file_url(node.field_head_img.entity.fileuri) }}"/>

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • Rolle erstellen nicht zu finden
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
Weiter

Neue Kommentare

  • Verwende doch das Tag dafür,
    vor 6 Tagen 11 Stunden
  • Guckst du hier: step by step
    vor 6 Tagen 1 Stunde
  • Guckst du hier: step by step
    vor 6 Tagen 1 Stunde
  • Ich habe ja keine Angst vor
    vor 2 Wochen 1 Tag
  • Ist grundsätzlichmachbar – aber nichts für „einfach mal schnell“
    vor 2 Wochen 3 Tagen
  • Vielen Dank erst einmal, aber
    vor 2 Wochen 5 Tagen
  • Du hast die "Trusted host
    vor 2 Wochen 5 Tagen
  • Bitte genauer den aktuellen Lösungs-Ansatz beschreiben
    vor 4 Wochen 4 Tagen
  • Git und rsync sind die wichtigsten Werkzeuge
    vor 5 Wochen 1 Tag
  • Arrrrg. Nix Tabelle :-D /*
    vor 9 Wochen 3 Tagen

Statistik

Beiträge im Forum: 250284
Registrierte User: 20499

Neue User:

  • Inga GuAph
  • Robertolix
  • DavidBit

» Alle User anzeigen

User nach Punkten sortiert:
wla9464
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 16 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association