Theming des Node Titels
am 08.12.2008 - 16:51 Uhr in
Hallo,
da ich derzeit ein neues Theme erstelle und gerne in jeder Seite den Nodetitel abändern möchte bzw. gewisse Änderungen durchführen möchte, dies allerdings nicht in jeder node.tpl.php neu defenieren will suche ich eine Möglichkeit den Nodetitel zu modifizieren. Ich denke mal das dies sicher über eine phptemplate_ funktion möglich ist, doch hab ich im Moment absolut keine Ahnung welche dies sein könnte, daher wäre ich für jeden Tip dankbar.
Gruß tafkad
- Anmelden oder Registrieren um Kommentare zu schreiben

Bei vielen node-(...).tpl.php
am 08.12.2008 - 17:21 Uhr
Empfiehlt es sich die Gemeinsamkeiten in ein node-common.inc.php (kann auch anders heißen) zusammenzufassen und dort zu formatieren.
In den einzelnen node-(...).tpl.php macht man dann einfach ein
includemacht bspw. einprint_node_header(), gibt seinen$contentaus und macht dann einprint_node_footer().Hmm, ok, hört sich schonmal
am 09.12.2008 - 09:24 Uhr
Hmm, ok, hört sich schonmal interessant an die Idee, bin aber eher davon ausgegangen das man den Titel ebenfalls Themen kann. Naja, dem scheint wohl nicht so zu sein.
Wenn Du die "Mama aller Nodes" nicht anfassen möchtest
am 09.12.2008 - 11:56 Uhr
gerne in jeder Seite den Nodetitel abändern möchte bzw. gewisse Änderungen durchführen möchte, dies allerdings nicht in jeder node.tpl.php neu defenieren
Um Dir besser zu raten müsste man wissen was "gewisse Änderungen" konkret bedeutet.
Das hier ist Unlogik: "nicht in jeder node.tpl.php"
Es kann und gibt nur eine Datei "node.tpl.php". Dort durchgeführte Änderungen wirken sich im einfachen Änderungsfall auf alle Nodes aus. Die "node.tpl.php" ist quasi die "Mama aller Nodes".
Wenn Du die "Mama aller Nodes" nicht anfassen möchtest kommt für Deine Aufgabe ein eigenes Modul in Frage.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Ok, folgendes möchte ich
am 09.12.2008 - 17:02 Uhr
Ok, folgendes möchte ich machen.
Ich hab unterschiedliche Node Templates, da wir sehr unterschiedlichen Contentinhalt haben, von normalem Text, über Word was durch einen FCKEditor durchläuft bis hin zu HTML konvertierter Docbook Content welcher mehr oder weniger ein festes Layout hat was ich nicht ändern kann und will. Daher möchte ich nicht die Änderungen in jeder Node Template Datei machen.
Was ich z.b. am Titel gerne geändert hätte, wäre das sobald ein ® dieses in
<sup>®</sup>verwandelt wird, da man im Nodetitel ja keine HTML Tags angeben kann und ich das ganze auch nicht unserer Marketingabteilung zumuten möchte bzw. keine Lust habe denen auch noch HTML zu erklären. Die sollen Ihren Inhalt eingeben und fertig.Daher suche ich nun eine Möglichkeit den $titel vorher schon zu beeinflussen.
So, hoffe ich hab mich nun besser ausgedrückt.
Filter, die oft vergessenen Freunde
am 09.12.2008 - 17:19 Uhr
Das Beispiel hört sich aber sehr stark nach einem Filter an.
Ein bereits bestehende in der Art wäre http://drupal.org/project/markdown.
Da lassen sich jetzt Deine Spezialfälle recht schnell abkupfern.
Fuer mich stellt ein Modul die eleganteste Loesung dar.
am 09.12.2008 - 17:28 Uhr
Nimm die node.tpl.php und steuere in ihr die Titelanzeige in Abhaengigkeit der gewuenschten Nodetypes.
Achtung: Bedenke aber das existierende Nodetype Templates die Anderungen in der "node.tpl.php" ueberschreiben.
"node.tpl.php" Snipped:
if ($node->type == 'foobar') {// Titel fuer foobar Nodes aendern
}
if ($node->type == 'barfoo') {
// Titel fuer barfoo Nodes aendern
}
Wenn das obige "Achtung:" zutrifft weil die Nodetype Template aus anderen wichtigen Gruenden existieren muessen so bleibt Dir wohl wirklich nur ein eigenes Modul in dem Du mittels hook_view() auf die Titel der Nodes Einfluss nimmst.
Description
Display a node.
This is a hook used by node modules. It allows a module to define a custom method of displaying its nodes, usually by displaying extra information particular to that node type.
Fuer mich stellt ein Modul die eleganteste Loesung dar.
PS
Ein eigenes Modul ist einfacher realisiert als Du vermutlich momentan glaubst.
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Ist auch nicht ganz das was
am 10.12.2008 - 09:54 Uhr
Ist auch nicht ganz das was ich gesucht habe. Module sind einfach zu erstellen, das weiß ich, mir hat einfach die Position gefehlt wo ich meinen speziellen "Filter" ansetzen konnte, doch die Position habe ich nun nach ewigem Suchen und dann auch gefunden. Sie heist '_phptemplate_variables' und bietet genau die Stelle wo ich unabhängig vom Nodetyp und dessen Template mein Vorhaben realisieren kann, zumindest sieht es bisher so aus. Hatte die ganze Zeit nach so einer art phptemplate_title funktion gesucht und nicht gefunden und die '_phptemplate_variables' jedesmal überlesen.
Trotzdem danke euch beiden.