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

Views und Blocks, grundlegende Fragen

Eingetragen von ckirchho (7)
am 23.09.2010 - 16:45 Uhr in
  • Views
  • Drupal 6.x

Hallo,

ich bin mit kleinen Änderungen bzw. Erweiterungen an einer Drupal-Website beauftragt worden. Mein Kenntnisstand bzgl Drupal ist niedrig. Ich kann mit (X)html, CSS, PHP oder MySql umgehen, habe bereits tpl-Dateien für Drupal erstellt, stehe aber regelmäßig vor einer Wand und werde nicht ganz schlau.

Was bereits geschah: Es gibt eine Blog-Seite, die die neuesten Blogeinträge (Titel und Anrisstext) anzeigt.Ich konnte eine TPL-Datei erstellen und dort dafür sorgen, dass zusätzlich Autor und Datum ausgegeben werden. Über die Einstellungen der Ansicht ist mir dies nicht gelungen, weil dort unter "Felder" lediglich "Das ausgewählte Design verwendet keine Felder." steht und ich daher nicht wusste, wie ich die Felder Autor und Datum hinzufügen sollte.

Nebenbemerkung: In der Administration, auf der Übersichtsseite der Ansichten, gibt es zwei Blog-Ansichten:
---------------------------------------------------------------
Normal Node-Ansicht: blog (Blog)
Titel: Neueste Blogeinträge
Pfad: blog
Block, Seite
---------------------------------------------------------------
Blog-Ansicht für Frontpage
Normal Node-Ansicht: blog_frontpage (Frontpage)
Titel: Neueste Blogeinträge
Pfad: blog-teaser
Seite
---------------------------------------------------------------

Ich vermute, dass die zweite gar nicht verwendet wird.

Auf der Übersichtsseite der Blöcke gab es einen deaktivierten Block "Neueste Blogeinträge". Den habe ich dann aktiviert, in die right_sidebar gelegt und so eingestellt, dass er nur auf der Blog-Seite sichtbar ist.

In der View "blog" habe ich für den Block definiert, dass er lediglich die Titel der neusten Blog-Einträge anzeigen soll. Den "Weiter"-Link habe ich deaktiviert und zum Testen eingestellt, dass nur 2 Einträge angezeigt werden sollen.

Der (bzw. irgendein Block) Block erscheint nun auch, aber mit Weiter-Link und mit mehr Einträgen. Es scheint also nicht der Block zu sein, dessen Einstellungen ich gerade geändert habe. Wenn ich den Titel der Ansicht ändere, so ändert sich der beim Block angezeigte Titel nicht.

Testweise habe ich auch das Datum des Blog-Eintrags als weiteres in der Blockansicht anzuzeigendes Feld definiert. Doch auch das wirkt sich nicht aus. Es scheint sich also um einen anderen Block zu handeln, und ich habe keine Ahnung, woher er kommt.

Nun frage ich mich erstens: Woher kommt dieser Block, wo ist er definiert? Wie kann ich so etwas heraus finden?

Oder andersherum: Wo ist die Block-Anzeige dieser Ansicht zu finden. Das, was ich dort auf der Block-Übersichtsseite als "Neueste Blogeinträge" gefunden und aktiviert habe, scheint es nicht zu sein, denn der Block sieht nicht so aus, wie ich es in der Ansicht definiert habe.

Caching ist in der Testumgebung deaktiviert, daran dürfte es also nicht liegen.

Ich bin für jeden Tipp und jeden Erkenntnisgewinn dankbar.

Viele Grüße,

Christian

‹ Unterschied View-Vorschau und View [gelöst] Gethemten Block einer View in einem Template ausgeben? ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Zitat: Nun frage ich mich

Eingetragen von netzkoop (1820)
am 24.09.2010 - 08:38 Uhr
Zitat:

Nun frage ich mich erstens: Woher kommt dieser Block, wo ist er definiert? Wie kann ich so etwas heraus finden?

Blöcke können auf verschiedene Arten zustande kommen. Z.B. durch Module ("Neueste Blogeinträge"), Views-Ansichten, durch "Block hinzufügen" in der Verwaltung...
Einen Aufschluss gibt die div id="xyz" Bezeichnung im Quelltext.

Zitat:

Oder andersherum: Wo ist die Block-Anzeige dieser Ansicht zu finden.

Normalerweise in der Verwaltung der Blöcke. Es gibt auch eine Vorschau innerhalb von Views für die einzelnen Ansichten. Daran kannst du sehen, wie dein Block später aussieht.

Zitat:

Es gibt eine Blog-Seite, die die neuesten Blogeinträge (Titel und Anrisstext) anzeigt.Ich konnte eine TPL-Datei erstellen und dort dafür sorgen, dass zusätzlich Autor und Datum ausgegeben werden.

Was ist das für eine .tpl? Wie heisst die?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo, vielen Dank erst

Eingetragen von ckirchho (7)
am 24.09.2010 - 10:56 Uhr

Hallo,

vielen Dank erst einmal für die Antwort.

Die Id des Blocks ist "block-blog-0", daher vermute ich, dass der Block sehr wohl aus der Ansicht "blog" kommt. Die Live-Vorschau des Blocks in der Administration der Ansicht "blog" ist genau so, wie ich es dort im Moment eingestellt habe:
- Die Felder Titel und Datum werden angezeigt
- Es werden nur die zwei neuesten Beiträge angezeigt
- Es gibt keinen "Weiter"-Link

Auf der Blog-Seite selbst (/blog) erscheint aber etwas ganz anderes (aber eben mit der Id "block-blog-0"), daher vermute ich, dass dieser Block irgendwo anders herkommt.

Doch unter "/admin/build/block/list" gibt es nur einen Block "Neueste Blogeinträge", und den habe ich aktiviert und in die "right sidebar" gelegt. Das scheint aber nicht der Block zu sein, den ich in der Ansicht "blog" angelegt habe.

Die TPL-Datei ist nicht für eine Ansicht oder einen Block, sondern für Nodes (wie heißen Drupal-Nodes auf deutsch?) des Types "Blog". Der Dateiname lautet node-blog.tpl.php. Darin schreibe ich lediglich vor der Ausgabe von $content noch eine kleine div-Struktur, in der der Autor und das Datum ausgegeben werden:

    [...]
   <div class="meta">
        <div class="author"><?php print "von <strong>".ucwords(implode(" ", explode(".", $node->name)))."</strong>"; ?></div>
        <div class="date"><?php print "am ".date("d.m.Y", $node->created); ?></div>
    </div>
    <div class="content">
        <?php
       
print $content;
       
?>

    </div>
[...]

Unsere Benutzernamen sind nach dem Muster vorname.nachname aufgebaut, daher das implode-explode-Konstrukt für den Namen. Die divs bzw. deren Klassen benötige ich, um sie im CSS formatieren zu können.

Die TPL-Datei hat aber denke ich nichts mit dem Problem zu tun.

Zu den Screenshots:
- "Screen Ansichten.jpg" zeigt, dass es eine Ansicht "blog" mit dem Titel "Neueste Blogeinträge" gibt, und bei ihr wird angezeigt, dass sie eine Ansicht des Typs "Seite" und eine des Typs "Block" enthält. Die andere Ansicht "blog_frontpage" hat ebenfalls den Titel "Neueste Blogeinträge", aber nur eine Ansicht "Seite", von dort dürfte der Block also nicht kommen.
- "Screen Ansicht 'blog'.jpg" zeigt die Einstellungen der Block-Ansicht und dessen Live-Vorschau. Titel und Datum werden angezeigt, zwei Einträge, kein "Weiter"-Link
- "Screen Blog-Seite.jpg" zeigt die Seite "/blog" und ein wenig vom Firebug. Der BLock rechts enthält mehr als zwei Einträge, zeigt nur den Titel (nicht das atum) und zeigt zudem einen "Weiter"-Link. Das kann also eigentlich nicht der Block sein, denn ich eingestellt habe. Die Id wie man unten im Firebug sieht, ist "block-blog-0"

Nun könnte ich natürlich versuchen, auf für diesen Block eine TPL-Datei zu erstellen und den Html-Output komplett selbst zu schreiben, aber das kann ja nicht Sinn der Sache sein. Ich würde das ganze Drupal-System ja auch gerne besser verstehen und möchte daher gerne herausfinden, wie ich diesen Block, der da angezeigt wird, nun ändern kann.

Für jegliche weitere bin ich äußerst dankbar.

Viele Grüße,

Christian

AnhangGröße
Screen Ansichten.jpg 226.04 KB
Screen Ansicht 'blog'.jpg 198.92 KB
Screen Blog-Seite.jpg 265.02 KB
  • Anmelden oder Registrieren um Kommentare zu schreiben

Also zum grundsätzlichen

Eingetragen von netzkoop (1820)
am 28.09.2010 - 09:47 Uhr

Also zum grundsätzlichen Vorgehen würde ich dir empfehlen eine Testumgebung mit einem frischen Drupal zu installieren und Stück für Stück zu forschen.
Dann kannst du nämlich sehen, dass durch die Aktivierung des Blog-Moduls keine Ansicht generiert wird - allerdings ein Block zur Verfügung steht mit der id "block-blog-0"

Importierst du eine deiner Ansichten und deaktivierst den Standard-Block... Was passiert dann? Gibt es einen Block und falls ja mit welcher id, usw...
So kannst du dich langsam an das ganze herantasten.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo, und vielen dank für

Eingetragen von ckirchho (7)
am 28.09.2010 - 10:05 Uhr

Hallo,

und vielen dank für die Antwort. Unter Laborbedingungen ist das sicher eine vernünftige Vorgehensweise. Allerdings arbeite ich ja bereits mit dem, was unsere Testumgebung ist, und ich habe nicht die Möglichkeit, weitere Testumgebungen zu erstellen.

Andererseits macht dies - zumindest aus meiner Sicht - einen ganz klaren Mangel von Drupal klar. Denn ich kann mir keinen Grund vorstellen, warum das System im Admin-Bereich nicht bei jedem Block genau herleiten könnte, woher dieser Block kommt, ob aus einem Modul, einer Ansicht, etc.

Der Devel Themer kann das vielleicht, doch der will bei uns nicht laufen...

Ich werde weiter forschen.

Viele Grüße,

Christian

  • Anmelden oder Registrieren um Kommentare zu schreiben

Nur mal so geraten ...

Eingetragen von Kirsten1965 (703)
am 28.09.2010 - 10:24 Uhr

Hallo Christian,

eigentlich dürfte es damit nichts zu tun haben, aber .... eventuell ist es ein Problem, dass der Standardblock für den Blog und der Block, der durch Views erstellt wird, den gleichen Titel haben. Benenne den Views Block doch einfach anders und schaue dann nach, ob er angezeigt wird.

Bei mir ist es auch schon vorgekommen, dass ich in der Datenbank händisch alle Tabellen mit *cache* leeren mußte und dann noch einmal die Theme Registry geleert habe mit Admin Menu und den Cache des Browsers leeren mußte, damit die Änderungen alle übernommen wurden.

Einen Versuch ist sicherlich beides wert.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ach so wenn es eine

Eingetragen von netzkoop (1820)
am 28.09.2010 - 10:24 Uhr

Ach so wenn es eine Testumgebung ist dann kannst du ja mal den Block aus der Blöckeverwaltung deaktivieren...

Und vielleicht gibt es noch ein Missverständnis:
An der id "block-blog-0" kannst du normalerweise sehen, dass dieser Block vom Blog-Modul kommt.
Aus einer Ansicht hätte er eine id "block-views-xyz-block" oder ähnlich. Dann weisst du er kommt vom Views-Modul.
Legt ein User den Block in der Blöcke-Verwaltung an dann ist die id "block-block-1", usw...

Aber dein System ist ja nicht frisch...

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke wiederum für die

Eingetragen von ckirchho (7)
am 28.09.2010 - 13:24 Uhr

Danke wiederum für die Antwort.

Ich verstehe nicht ganz, warum ich den Block deaktivieren sollte. Er war deaktiviert, als ich mit den Änderungen begann, und ich habe ihn dann aktiviert.

Der Block hat die Id "block-blog-0". Kann ich dessen Erscheinung dann überhaupt irgendwo ändern, oder ginge das generell nur über eine View.

Ich habe mittlerweile eine View angelegt, dort eine Block-Ansicht erstellt und diesen Block eingebunden. Der tut auch was er soll.

Den anderen Block habe ich deaktiviert. Ich finde es nur etwas redundant, diesen anderen Block (der mit der Id "block-blog-0" im Html-Code erschien und direkt vom Blog-Modul kommt) zwar im Angebot zu haben, ihn aber nicht nutzen zu können, weil ich seine Erscheinungsform nicht ändern kann. Aber vielleicht fehlt mir da entweder die Kenntnis, wie ich ihn anpassen kann, oder das nötige Abstraktionsvermögen um zu verstehen, warum das nicht möglich ist.

Wahrscheinlich ginge es mit einer TPL-Datei für diesen Block, sodass ich dessen Inhalt selbst nach meinen Wünschen aufbaue.

Aber es funktioniert nun mit der Block-View, und damit will ich zufrieden sein.

Viele Grüße,

Christain

  • 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 3 Tagen
  • Hey danke
    vor 2 Wochen 4 Tagen
  • Update: jetzt gibt's ein
    vor 2 Wochen 5 Tagen
  • Hallo, im Prinzip habe ich
    vor 3 Wochen 2 Tagen
  • Da scheint die Terminologie
    vor 3 Wochen 2 Tagen
  • Kannst doch auch alles direkt
    vor 3 Wochen 6 Tagen
  • In der entsprechenden View
    vor 3 Wochen 6 Tagen
  • Dazu müsstest Du vermutlich
    vor 3 Wochen 6 Tagen
  • gelöst
    vor 6 Wochen 3 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 6 Wochen 4 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20455

Neue User:

  • ByteScrapers
  • Mroppoofpaync
  • 4aficiona2

» 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 23 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