Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Allgemeines zu Drupal ›

Überschrifeninhalt an NodeTyp anpassen?

Eingetragen von FlorianAGAI (168)
am 19.12.2007 - 13:18 Uhr in
  • Allgemeines zu Drupal
  • Drupal 5.x oder neuer

Hallo ich habe mal wieder eine Frage:

Ich möchte gerne eine Überschrift ändern, und zwar so, dass je nach "Node-typ" etwas anderes geprinted wird.
Ein Pseudocode Beispiel:

<?php if (userprofile) { ?> <h1><?php print $user->profile_realname ?> <?php print $user->profile_lastname ?></h1> <?php } else {
?>
<h1><?php print $title ?></h1> <?php }?>

Ich müsste jetzt wissen inwiefern es Variablen für den Userbereich gibt...
Im Klartext heisst das: Auf jeder Seite wird der Titel angezeigt, nur wenn die URL Http://www.meindrupal.de/user
lautete wird nicht der Titel angezeigt, sondern "custom" Felder.

Ich hoffe jemand kann mir helfen.

Gruß Florian

‹ Neueinstieg + "Multisite mit einer DB" Frage Parameterübergabe an ein Menü ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Du kannst für jede Seite

Eingetragen von pebosi (2645)
am 19.12.2007 - 13:42 Uhr

Du kannst für jede Seite verschiedene Template Dateien anlegen, siehe http://www.drupalcenter.de/handbuch/4284

gruß pebosi

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hm ja das will ich nicht

Eingetragen von FlorianAGAI (168)
am 19.12.2007 - 13:49 Uhr

Hm ja das will ich nicht (bzw. hab ich schon).
Es ist nur so das das template für die Seite nicht den "titel" beinhaltet. Der Titel wird auf der page.tpl.php eingelesen. Ich möchte jetzt also das auf der page.tpl.php der TITEL AN DEN NODE-TYP angepasst wird.

Wie ist denn die Variable für "user" $node->user? $node_typ? $node-type? $type-node?

"The final answer is 1337"

  • Anmelden oder Registrieren um Kommentare zu schreiben

Man koennte entweder in der

Eingetragen von quiptime (4972)
am 19.12.2007 - 14:01 Uhr

Man koennte entweder in der "node.tpl.php" oder in den jeweiligen "node-nodetype.tpl.php" vor der Ausgabe der Ueberschrift den Nodetype pruefen.

In der "node.tpl.php" koennte dies so aussehen:

<?php
mytitle
= '<h1 class="nodetitle">'.$title.'</h1>';
if (
$node->type == 'nodetype1') {
 
$mytitle = '<h1 class="nodetype1">'.$title.'</h1>';
} else if (
$node->type == 'nodetype2') {
 
$mytitle = '<h1 class="nodetype2">'.$title.'</h1>';
} else if (
$node->type == 'nodetype3') {
 
$mytitle = '<h1 class="nodetype3">'.$title.'</h1>';
}
?>

Die normale Ausgabe des Titel
<h1><?php print $title; ?></h1>

wird ersetzt mit
<?php print $mytitle; ?>

In den einzelnen "node-nodetype.tpl.php" kann man sich die Pruefung des Nodetype sparen. Man befindet sich ja bereits im in Frage kommenden Nodetype. In diesem Falle braucht man also nur die Ausgabe des Titel zu aendern.

Die Vorbereitung der Aenderung erfolgt mit der Ausgabe differenzierter CSS Klassen im h1 Tag.
Die eigentliche Aenderung des Titel erfolgt auf diese Klassen bezogen in der CSS Datei des Theme.
 

PS
Leider hast Du in Deiner Fragestellung offengelassen wo der Titel geaendert werden soll. Dein Codesnipped macht keine Angabe ueber seinen Einsatzort.
Das von "userprofile" die Rede ist koennte man das Userprofil vermuten. Aber in diesem Zusammenhang gibt es verschiedene Moeglichkeiten.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

Zitat: Wie ist denn die

Eingetragen von quiptime (4972)
am 19.12.2007 - 14:05 Uhr
Zitat:

Wie ist denn die Variable für "user" $node->user? $node_typ? $node-type? $type-node?

Bist Du schon mal auf den Gedanken gekommen ein

<?php
print '<pre>';
print_r($node);
print
'</pre>';
?>

in einer Templatedatei zu machen um zu erfahren was in $node enthalten ist und wie Du es ansprechen kannst?

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

title setzen

Eingetragen von tumblingmug (872)
am 19.12.2007 - 14:14 Uhr

Wenn ich den Florian jetzt richtig verstanden habe, hat er eine Reihe von nodetype-spezifischen Template-Dateien, will nun aber nicht den Node-Titel, sondern den Seitentitel abhängig vom Nodetyp ändern. Einige mögliche Ansätze wären hierfür IF-Konstrukte in der zuständigen page.tpl.php oder aber auch der Einsatz von drupal_set_titel() innerhalb der node-NODETYPE.tpl.php-Dateien.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Okay.

Eingetragen von FlorianAGAI (168)
am 19.12.2007 - 14:27 Uhr

Erstmal Danke für die Antworten...

Ich habe erstmal die "einfachste" Variante gewählt....Ich habe eine page-user.tpl.php erstellt.
Wenn ich also die URL www.meindrupal.de/user aufrufe, wird nicht die page.tpl.php aufgerufen, sondern die user-page.tpl.php, ich kann also anstatt $print title alles eingeben was ich möchte.

Der Zweck ist also erfüllt. DANKE!

Neues Problem: Ich habe in meinem Userprofil mehrere Felder eingefügt, wie z.B.
First Name (profile_firstname) aufrufen kann ich das Ganze mit $user->profile_firstname.
Leider werden diese Felder nicht auf der user-page.tpl.php ausgegeben...weiss jemand warum?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Komisch

Eingetragen von FlorianAGAI (168)
am 19.12.2007 - 16:00 Uhr

Die Felder im Profil sollten doch eigentlich global verfügbar sein oder?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Neuer Thread

Eingetragen von tumblingmug (872)
am 19.12.2007 - 17:46 Uhr

Starte einen neuen Thread mit dem neuen Thema.

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

Statistik

Beiträge im Forum: 250233
Registrierte User: 20452

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 28 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