auch schlafen ist eine form der kritik

Blogoff #207

Gerade dabei an einigen Dateien Drupals zu werkeln. Dabei auch aufgefallen: Wenn ich mir die Dateien des leerraum-Themes so anschaue, frage ich mich wirklich, was ich damals als Drupalneuling so zusammengeschrieben habe. Dann kommt die abstoßende Erkenntnis, dass ich den Großteil wieder so chaotisch und versprengt eintippen würde.


7 Antworten

  1. *signed*

    Und ich bin reichlich froh jetzt das Thememe-Modul zu haben. Vieles läuft doch viel zu hirnzermürbend in Drupal. Und ich fürchte ich hab selbst mit Thememe den Wahnsinn noch nicht ausgetrieben.

  2. fym

    Lokal ist das Theme schon angepasst und verwendet dort das Thememe-Modul. Übersichtlicher wird’s dadurch allemal, allein, weil so beispielsweise in der page.tpl nicht mehr das langwierige arg()-Gedöns steht.

    Aber bisher sehe ich damit noch keine Möglichkeit, die drupalsche Markup-Diktatur zu entschärfen. Hm.

  3. Hm. Abgesehen von den Formularen für Kommentare und so, regele ich mit Theme inzwischen ziemlich viel in den Dateien des Themes, die vorher in Modulen waren. Ich bin noch auf der Suche nach einem Hack für dem Pager. Danach bin ich dann am Ende meiner Ideen.

    Welche diktatorischen Elemente würdest Du denn gerne in Themers-Hand sehen?

  4. fym

    [wirr und unstrukturiert]

    Dann übersehe ich wohl die Möglichkeiten zur Nutzung. In meiner Version von Thememe gibt es genau 4 Template-Funktionen. Zwei davon sind nur für CSS-Klassen. Von den anderen beiden nutze ich momentan einzig _get_pagetype.

    Was ich gerne anders hätte? Das ist zwar Wunschdenken und ist natürlich mit Einschränkungen gemeint, aber: Dass sich das Theming weg vom „Programmierer“-Ansatz Drupals bewegt. Soweit ich das sehe, steckst du beispielsweise alle preprocessed variables in $thememe. Okay. Aber was bringt das einem Themer, der mit php und Co. relativ wenig zu tun hat? Der vielleicht schlicht und ergreifend – ähnlich wie bei WP – Zugriff auf Inhalt, Kommentare ect. haben und diese wie es ihm gefällt anordnen möchte?

    Ich will beim Theming volle Kontrolle. Die habe ich aber – soweit ich weiß – beispielsweise bei der Kommentarauflistung nicht. Wo genau werden die Kommentare ausgegeben? Wo es Drupal will. Sicher, ich kann mit *.tpl.php-Dateien bestimmen, wie die Kommentare aufgelistet werden sollen, aber sonst – globaler gesehen? Als Themer packe ich ein „print $content“ in die page.tpl.php und damit erschöpfen sich dort meine Möglichkeiten zur Einflußnahme. Das finde ich unbefriedigend.

    Und momentan sehe ich z.B. in der $thememe keine für mich nützlichen Daten, die ich nicht schon durch’s node-Objekt bekäme.

  5. Ah. Ok. Wobie die Kommentare und der Pager ja auch schon fast die beiden einzigen Element sind, deren Position und Inhalt man nicht in einer der Default Tpl-Dateien des Themes bearbeiten kann. (Regions bspw. kann ich ja sehr gut kontrollieren.)

    Ok. Ich halte mal fest, was noch fehlt:
    1. Template-Tags um an die Kommentare als Daten (Arrays/Objekte) zu kommen.
    2. Template-Tags um an den Pager zu kommen.
    3. Template-Tags um an beliebige Blöcke zu kommen?
    (Letzteres Hab ich schon für’s Dashboard programmiert, allerdings liefert das gerendertes HTML zurück.)

  6. fym

    Zuerst zu den festgehaltenen Punkten. Ja und ja zu den ersten beiden. Vor allem zum Pager. Das Ding ist eine einzig schmerzende Wunde. (du musst mir aber mal verraten, wie du/man bei Verwendung der Template-Tags zugleich ihre automatische Ausgabe unterdrücken willst/kannst).

    Punkt 3 ist sicherlich (nein, bestimmt) nützlich, auch wenn ich persönlich das ganze Block-System von Drupal nicht soooo mag (hatte ich ja schonmal geschrieben) und in nächster Zeit versuche mehr davon in die Template-Dateien auszulagern.

    Allgemeiner:

    Die Positionierung dieser Seitenelemente war auch nur ein Punkt (hm, und der einzige von mir erwähnte – na, wirr eben). Die Regions sind z.B. ja etwas, dass das drupalsche Theming richtig macht. Ich denke da vielleicht etwas „radikal“ und zu idealistisch, aber so wie ich dich verstanden hatte, war es ja gerade dein Vorsatz, (fast) sämtliche Daten pur zur Verfügung zu stellen, damit man sich das (X)HTML drumherum selbst zusammenbasteln kann.

    Wenn ich mir meine template.php so anschaue, so sind es die kleinen Markup-Sachen, die mich gestört haben. Warum muss ich beispielsweise so ein Zeug wie theme_box() verwenden, nur um die Titel-Ausgaben a la „Post a new comment“ und Co. bei Formularen ect. zu unterdrücken? Sowas sollte doch eigentlich im Theme-Template selbst machbar sein. Im Idealfall würde das Thememe-Modul also dafür sorgen, dass ich alle – wirklich alle – Daten in Rohform vorliegen habe und mit Markup ummanteln kann. Mir ist klar, dass das so vollständig in Hinblick auf Drupals Architektur weder praktikabel, gut, noch ohne weiteres machbar sein dürfte. Es wäre trotzdem ein radikal-idealistischer Schritt, wenn man diese umfassende Kontrolle mit den drupalschen Mechanismen vereinbaren könnte.

    /dreamon
    PS: Wieder wirr und diesmal sogar obendrein hundemüde. Go figure 😉

  7. Ok. Verstanden. Losgeht’s. Ich sag bescheid, wenn’s was zu schauen gibt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert