Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module › Views ›

Views Theming und verfügbare Variablen

Eingetragen von GevatterTod (85)
am 12.05.2011 - 18:19 Uhr in
  • Views
  • Drupal 6.x oder neuer

Stolpere bei Views immer wieder über ähnliche Probleme wenn es um detailiertere Anpassung der Ausgabe geht. Problem ist eigentlich immer, dass ich in bestimmten Templates keinen Zugriff mehr auf die Daten früherer Ebenen habe.
Diesbezüglich akut: Ich benutze das Views-Accordion Modul, habe dort entsprechend pro accordion-element Anpassungen vorgenommen in der Datei views-view-accordion--Meinview.tpl.php
Nun würde ich aber gern noch gewisse Dinge anders anzeigen lassen in Abhängigkeit eines Wertes von einem der Felder die ich im View lade.
Meine verfügbaren Variablen in diesem Template File sind aber nur noch die $rows, welche schon den komplett formatierten Inhalt enthalten. Was ich bräuchte wäre aber das Array $fields wie ich es in views-view-fields.tpl.php habe, wo ich die Werte einzelner Felder auslesen kann.
Beim Accordion gruppiere ich mehrere Datensätze und will ein bestimmtes Feld der Datensätze überprüfen. Ist dieses Feld mit "x" gesetzt soll IM Accordion unter allen gruppierten Datensätzen etwas angezeigt werden, also nicht unter dem betroffenen Datensatz und auch nicht unter jedem Datensatz innerhalb des Accordions.
Hoffe ich konnte das verständlich ausdrücken. Kern der Frage ist jedenfalls wie ich mir die $fields-Informationen auf der Ebene von views-view-accordion--Meinview.tpl.php nutzbar machen kann bzw logischerweise $rows um weitere Daten erweitere.

Wie bewerkstellige ich das bzw generell die "Übergabe" von Werten in höhere Template-Ebenen? Geht das nur mit entsprechenden Hooks?

‹ Ein Button mit vordefinierter Funktion Button mit frei wählbarem Text in View ausgeben der auf Beitrag verlinkt ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

hast du mehrere verschiedene

Eingetragen von Peter Majmesku (656)
am 13.05.2011 - 11:05 Uhr

hast du mehrere verschiedene block- bzw page-views innerhalb einer view und möchtest diese unabhängig voneinander themen? ansonsten kannst du deinen wert im theme in die globals bzw sessions variable setzen und damot innerhalb verschiedener template dateien etwas machen. diese lösung ist allerdings hacky. vielleicht schaust du dir auch mal hook_views_prebuild() bzw die views api an.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke für den Tipp,

Eingetragen von GevatterTod (85)
am 18.05.2011 - 15:42 Uhr

Danke für den Tipp, weitergekommen bin ich zumindest mit dem hook_views_prebuild noch nicht so recht. Coding in Views ist mir da stellenweise gerade ein ziemliches Rätsel.
Bin jetzt auf folgende preprocess-Lösung in der template.php gekommen nach einigen Stunden Rumprobieren, Grübeln und Gebastel:

function phptemplate_preprocess_views_view_accordion(&$vars) {
  $view = $vars['view'];
  $result = $view ->result;
  //dprint_r($result);
  global $ccount;
  if(!$ccount) {
  $ccount='0';
  }
    $vars['info'][$ccount]['nid']=$result[$ccount]->nid;
    $vars['info'][$ccount]['status']=$result[$ccount]->node_data_field_status_field_status_value;
  $ccount++;
}

Ich befülle mir also mit der Funktion ein zusätzliches Array in dem ich die Elemente pro Aufruf der Funktion durchnummeriere ($ccount), später gehe ich im views-view-accordion.tpl.php mit einem dort verwendeten globalen Zähler das $info-array wieder durch und hole mir dort den passenden Wert für die Node-ID und das Statusfeld für jedes $row Element...
So wirklich gefallen mag mir diese Lösung nicht, ist doch ein ziemliches Gebastel von hinten durch die Brust ins Auge. Vielleicht kennt doch noch jemand eine bessere Lösung.

Kann mir nicht vorstellen der erste zu sein, der z.B. die nid auf dieser Template-Ebene nutzen will, oder?

  • Anmelden oder Registrieren um Kommentare zu schreiben

dein problem ist

Eingetragen von Peter Majmesku (656)
am 18.05.2011 - 21:23 Uhr

dein problem ist modulspezifisch. schreibe dein problem in die views-issues liste unter d.o.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • 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
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
Weiter

Neue Kommentare

  • Arrrrg. Nix Tabelle :-D /*
    vor 3 Wochen 25 Minuten
  • Textboxen mit Tabelle
    vor 3 Wochen 7 Stunden
  • Du sollst ja auch keine
    vor 3 Wochen 7 Stunden
  • Theme
    vor 3 Wochen 7 Stunden
  • Welches Theme benutzt du
    vor 3 Wochen 13 Stunden
  • Mit Responsive Raster hatte
    vor 3 Wochen 1 Tag
  • Hallo Alex,um das Häkchen
    vor 3 Wochen 1 Tag
  • Modul view_unpublished
    vor 3 Wochen 2 Tagen
  • Modul "override node options"
    vor 3 Wochen 3 Tagen
  • Im Grunde ist dass ein
    vor 3 Wochen 5 Tagen

Statistik

Beiträge im Forum: 250270
Registrierte User: 20480

Neue User:

  • Stevebok
  • Robertnobia
  • AltonRaf

» Alle User anzeigen

User nach Punkten sortiert:
wla9463
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 61 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