Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Themes & Theming ›

page.tpl.php: Bestimmte Code Zeile soll nur bei 3 Inhaltstypen erscheinen, was in IF Schleife?

Eingetragen von wflorian (251)
am 28.09.2008 - 20:39 Uhr in
  • Themes & Theming
  • Drupal 5.x

Hallo,

ich möchte in meiner page.tpl.php eine bestimmte Zeile Code einfügen, die nur bei 3 bestimmten Inhaltstypen aufgerufen werden soll. Sprich ich möchte eine IF Schleife schreiben, weiß aber nicht auf was ich diese beziehen muss.

<?php if (?????) { ?>Hier kommt der Code/Text rein<?php } ?>

Da wo die Fragezeichen stehen müsste dann die zu prüfende Variable, etc stehen. Was müsste hier genau rein, um die Inhaltstypen zu prüfen?
Wisst ihr was ich meine?

Sicherlich wäre die Sache auch über 3 page-???.tpl.php zu lösen, allerdings fände ich das recht umständlich für lediglich eine Zeile Mehrcode.

Würde mich freuen, wenn mir jemand bei der Sache weiterhelfen kann.

Danke schonmal und viele Grüße
Florian

‹ Benutzerliste zweispaltig Suche Liste von Drupalvariablen und Drupalpfaden ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

<?phpif (arg(0) == 'node' &&

Eingetragen von dawehner (2639)
am 28.09.2008 - 20:44 Uhr

<?php
if (arg(0) == 'node' && is_numeric(arg(1)) {
 
$node = node_load(arg(1));
  if (
in_array($node->type, array('page', 'story', 'test'))) {
    print
"drupal ist der ganze wahnsinn";
  }
}
?>

Vom Prinzip gehts einfach so
--------------
Blog www.freeblogger.org: Deutscher IRC-Channel: irc.freenode.net #drupal.de ... Jabber-me: dwehner@im.calug.deXING

  • Anmelden oder Registrieren um Kommentare zu schreiben

hallo dereine, danke für

Eingetragen von wflorian (251)
am 29.09.2008 - 08:32 Uhr

hallo dereine,

danke für deine antwort.

also dein code führt zu folgenden fehler: Parse error: syntax error, unexpected '{' in xxx\yazio\page.tpl.php on line 25

allerdings führt:

<?php
 
if (in_array($node->type, array('xxx', 'xx', 'x'))) {
    print
"drupal ist der ganze wahnsinn";
  }
?>

zum gewünschten ergebnis...klär mich mal auf? :D

grüße
florian

  • Anmelden oder Registrieren um Kommentare zu schreiben

kann ich den obigen code von

Eingetragen von wflorian (251)
am 30.09.2008 - 09:40 Uhr

kann ich den obigen code von mir nun bedenkenlos verwenden? er funktioniert ja bisher einwandfrei...

  • Anmelden oder Registrieren um Kommentare zu schreiben

wflorian schrieb kann ich

Eingetragen von Kars-T (1473)
am 30.09.2008 - 10:17 Uhr
wflorian schrieb

kann ich den obigen code von mir nun bedenkenlos verwenden? er funktioniert ja bisher einwandfrei...

Ja auf alle Fälle.

Wobei in der page.tpl.php müsste $node schon vorhanden sein und es sollte

<?php
if (in_array($node->type, array('page', 'story', 'test'))) {
    print
"drupal ist der ganze wahnsinn";
  }
?>

reichen, wie du geschrieben hast.
---

Viele Grüße,

Kars-T

Arbeit: comm-press

Hobbies: Tower Defense HQ, plamo.de, Blog

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo Kars-T. Danke für

Eingetragen von wflorian (251)
am 30.09.2008 - 10:32 Uhr

Hallo Kars-T.

Danke für deine Antwort.

Super. Das freut mich! ;)

Grüße
Florian

  • Anmelden oder Registrieren um Kommentare zu schreiben

"page.tpl.php" kennt das Nodeobject nicht.

Eingetragen von quiptime (4972)
am 30.09.2008 - 10:39 Uhr
Zitat:

Wobei in der page.tpl.php müsste $node schon vorhanden sein und es sollte

In der "page.tpl.php" ist das Nodeobject ($node) nicht verfuegbar.

Es muss also in Abhaengigkeit der URL geladen werden.

<?php
/* auf URL-Schema /node/x pruefen */
if (arg(0) == 'node' && is_numeric(arg(1)) && arg(2) == '' ) {
 
/* Nodeobject laden */
 
$mynode = node_load(arg(1));
 
/* auf gewuenschte Nodetypes pruefen */
 
if ( $mynode->type == 'page' || $mynode->type == 'story' || $mynode->type == 'test' ) {
    print
"Drupal treibt Dich in den Wahnsinn.";
  }
}
?>

Das arg(2) == '' soll sicherstellen das der Code nur bei URL's nach dem Schema example.com/node/x ausgefuehrt wird.

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

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

quiptime

Eingetragen von Kars-T (1473)
am 30.09.2008 - 10:59 Uhr
quiptime schrieb
Zitat:

Wobei in der page.tpl.php müsste $node schon vorhanden sein und es sollte

In der "page.tpl.php" ist das Nodeobject ($node) nicht verfuegbar.

Ist es doch ;)

Sonst könnte ich das hier nicht verwenden und das Bild im Kopf der Seite verändern.

<?php
// aus der page.tpl.php
if($node->field_head[0]['filepath']){
   
$image = '/files/imagecache/Resize_675x137/'.$node->field_head[0]['filepath'];
}else{
   
$image = base_path().path_to_theme().'/images/'.'motiv-standard.jpg';
}
?>

Ich lade nicht $node von Hand.

http://www.clipper-aviation.de/
http://www.clipper-aviation.de/rundfluege/rundflug-ueber-hamburg-mit-dem...
---

Viele Grüße,

Kars-T

Arbeit: comm-press

Hobbies: Tower Defense HQ, plamo.de, Blog

  • Anmelden oder Registrieren um Kommentare zu schreiben

"page.tpl.php" kennt kein Nodeobject

Eingetragen von quiptime (4972)
am 30.09.2008 - 11:23 Uhr

Eben frisch mit D6 getestet. In der "page.tpl.php" ein

<?php
print 'Nodetype: '.$node->type;
?>

eingefuegt. Resultat: Keine Nodetype-Info.

Zu sehen auf http://drupal6.quiptime.com/

Edit

Bei der Anzeige einer Teaserliste, wie auf einer Startseite beispielsweise: Welche Node des Nodeobjectes soll denn verfuegbar sein wenn 10 Node-Teaser angezeigt werden?

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

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

quiptime schrieb Bei der

Eingetragen von Kars-T (1473)
am 30.09.2008 - 11:51 Uhr
quiptime schrieb

Bei der Anzeige einer Teaserliste, wie auf einer Startseite beispielsweise: Welche Node des Nodeobjectes soll denn verfuegbar sein wenn 10 Node-Teaser angezeigt werden?

Klar, aber damit gibst du dir ja eigentlich schon die Antwort:

Wenn du einen Node aufrufst, dann hast du auch ein $node sofort zur Verfügung. Wenn der Kontext um viele Nodes geht, dann hast du auch keins :)

wenn ich so ein Print in die page.tpl.php setze sehe ich auf Views und Panels Seiten nichts, aber auf "normalen" Seiten gibt es halt was aus.

---

Viele Grüße,

Kars-T

Arbeit: comm-press

Hobbies: Tower Defense HQ, plamo.de, Blog

  • 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 1 Woche 6 Tagen
  • Hey danke
    vor 2 Wochen 18 Stunden
  • Update: jetzt gibt's ein
    vor 2 Wochen 1 Tag
  • Hallo, im Prinzip habe ich
    vor 2 Wochen 5 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 5 Wochen 6 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 6 Wochen 18 Stunden

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