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

View in page.tpl.php identifizieren

Eingetragen von dknopf (80)
am 04.11.2011 - 14:32 Uhr in
  • Views
  • Drupal 7.x

Hallo Drupaler,

kurze Problembeschreibung:
Auf einer Seite haben wir beispielsweise 2 unterschiedliche Views, vielleicht so etwas wie "neueste Nachrichten" und "Klatsch und Tratsch"
je nachdem was für eine View angezeigt wird, möchte ich gerne oben auf der Seite ein anderes Logo anzeigen lassen, also ganz einfach in der page.tpl.php

d.h. ich müßte oben in der page.tpl.php die View identifizieren.
Bis jetzt habe ich das immer über die Variable $title gemacht, also ungefähr so:
if($title=="neuestes Nachrichten") dann zeige Logo1
if($title=="Klatsch und Tratsch") dann zeige Logo2

Diese Hilfslösung gefällt mir aber nicht so gut, insbesondere wird es schwieriger, wenn die Variable $title Umlaute enthält.

Deswegen die Frage: gibt es eine andere verläßliche Methode, wie ich in der page.tpl.php unterscheiden kann, welche View gerade angezeigt wird. So etwas wie ne ViewID wäre toll oder auch der maschinenlesbare Name der View.

Bestimmt hat der eine oder andere eine Idee dazu ;-)

Lieben Gruß
Daniela

‹ Nur Datei-Icon in View ausgeben Update Views gewünscht ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Die View müsste doch eine

Eingetragen von Exterior (2903)
am 04.11.2011 - 15:14 Uhr

Die View müsste doch eine eindeutige URL haben, die auch solche Dinge wie Umlaute etc. nicht entalten dürfte. Den Pfad bekommst du über die Funktion arg() ran, den könntest du überprüfen. Ist zwar auch nicht sooo die Mega-Lösung, dürfte aber ganz gut funktionieren.

  • Anmelden oder Registrieren um Kommentare zu schreiben

schon mal ein guter

Eingetragen von dknopf (80)
am 04.11.2011 - 15:31 Uhr

schon mal ein guter Ansatz
Das dürfte funktionieren.
Es wäre aber interesssant, ob es noch besser geht.
Die URL kann sich ja auch unter Umständen noch ändern.

sowas die die ID oder der Maschinenname wäre optimal.
ich habe aber in der page.tpl.php noch keine Varialble oder kein Array entdeckt, welches diese Dinge beinhaltet.

Vielleicht hat ja noch jemand eine Idee :-)

Lieben Gruß
Daniela

  • Anmelden oder Registrieren um Kommentare zu schreiben

Geh doch mal in die

Eingetragen von Exterior (2903)
am 04.11.2011 - 15:59 Uhr

Geh doch mal in die template.php deines Themes und suche dort die Funktion theme_preprocess_page(&$vars) bzw. eine entsprechende Variante davon (z. B. "meinTheme_preprocess_page"). Sollte es die noch nicht geben, musst du sie einfügen und danach die Theme-Registry neu aufbauen.

dort fügst du dann mal folgendes ein:

drupal_set_message('<pre>' . print_r($vars, 1) . '</pre>');

Beachte, dass die Variable $vars bei dir anders heißen kann.

Danach rufst du deine Seite mit der View auf. Wenn's keine Ausgabe geben sollte, ruf die Seite nochmal auf.

Damit dürftest du eine Liste mit allen verfügbaren Variablen bekommen und da kannst du mal schauen, ob es etwas für deine Bedürfnisse gibt.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Views identifizieren

Eingetragen von luzzi1 (8)
am 04.11.2011 - 17:24 Uhr

Hallo Daniela,

Du kannst doch für Deine Views einfach eine views-view.tpl.php nehmen und dort den gesamten Inhalt mit folgendem div umgeben:

<div id="view-<?php if (isset($view)) print $view->vid; ?>"> "gesamter Inhalt" </div>

Dann wird jeder view eine eindeutige ID zugeordnet (z.B.: view-7), die Du dann über css formatieren kannst. Das geht übrigens auch mit nodes in der page.tpl.php

Vielleicht hilft Dir das weiter.

Gruß

Luzzi

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich habe erst einmal den

Eingetragen von dknopf (80)
am 04.11.2011 - 17:38 Uhr

Ich habe erst einmal den Ansatz von Exterior verfolgt, denn ich hatte schon versucht mit dsm($vars) mir die Variablen, die in der page.tpl.php bekannt sind anzuschauen.
Aber der entscheidende Hinweis ist, dass die bei mir anders heißen, nämlich $variables (da hätte ich auch selbst drauf kommen können).

nun ist es mir möglich, auch schon oben in der page.tpl.php eindeutig die View zu identfizieren.

Also erst einmal vielen Dank für eure Hilfe, ich denke mal, das löst das Problem schon ganz gut :-)

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • 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
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 2 Wochen 6 Tagen
  • Hey danke
    vor 3 Wochen 13 Stunden
  • Update: jetzt gibt's ein
    vor 3 Wochen 1 Tag
  • Hallo, im Prinzip habe ich
    vor 3 Wochen 5 Tagen
  • Da scheint die Terminologie
    vor 3 Wochen 5 Tagen
  • Kannst doch auch alles direkt
    vor 4 Wochen 3 Tagen
  • In der entsprechenden View
    vor 4 Wochen 3 Tagen
  • Dazu müsstest Du vermutlich
    vor 4 Wochen 3 Tagen
  • gelöst
    vor 6 Wochen 6 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 7 Wochen 13 Stunden

Statistik

Beiträge im Forum: 250233
Registrierte User: 20459

Neue User:

  • Znogsnernoimb
  • ByteScrapers
  • Mroppoofpaync

» Alle User anzeigen

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