page--node--blog.tpl.php
am 30.10.2011 - 23:40 Uhr in
Hallo,
ich will meine Blogseite anders gestalten als meine Hauptseite.
Mit page--blog.tpl.php habe die Blog-Startseite schon nach meinen Wünschen gestaltet.
Meine Blogeinträge werden jedoch mit dem Theme der Hauptseite darstellt.
Wenn ich eine page--node--blog.tpl.php erstelle, dann ändert sich nichts.
Wenn ich jedoch für jeden Blogeintrag ein eigenes Theme erstelle, z.B. page--node--27.tpl.php, dann wird der Blogeintrag mit meinem Blog-Theme darstellt.
Wie schaffe ich es mit einer einzigen tpl.php-Datei, dass jeder Blogeintrag auch mit dem Blog-Theme angezeigt wird?
Über einen Hinweis bin ich sehr dankbar.
- Anmelden oder Registrieren um Kommentare zu schreiben

mach aus der
am 30.10.2011 - 23:51 Uhr
mach aus der page--node--blog.tpl.php
nur node--blog.tpl.php
Das von Dir genommene
am 31.10.2011 - 08:53 Uhr
Das von Dir genommene Construct page--node--blog.tpl.php ist nicht in der Liste der Drupal 7 Template Suggestions. Also mußt Du dieses Template über eine Preprocess-Function in der Datei template.php in Deinem Theme erst einführen. Ich habe für Dich einen passenden Thread auf Drupal.org gefunden.
Beste Grüße
Werner
Hallo Werner, ich habe nun in
am 31.10.2011 - 13:34 Uhr
Hallo Werner,
ich habe nun in meine template.php den Code:
<?phpfunction my_theme_process_page(&$variables) {
$variables['theme_hook_suggestions'][] = 'page__'. $variables['node']->type;
}
Nur kommt folgende Fehlermeldung:
* Notice: Undefined index: node in my_theme_process_page() (Zeile 3 von /var/www/vhosts/domain.de/httpdocs/drupal7/sites/all/themes/my_theme/template.php).* Notice: Trying to get property of non-object in my_theme_process_page() (Zeile 3 von /var/www/vhosts/domain.de/httpdocs/drupal7/sites/all/themes/my_theme/template.php).
Was kann ich dagegen tun?
Das beteutet das es teilweise
am 31.10.2011 - 14:14 Uhr
Das beteutet, dass es teilweise keinen index und damit auch keine Node Daten gibt.
Um den Notice zu bereinigen muss du die folgende if Abfrage einbauen:
<?php
if (isset($variables['node'])) {
// Hier kommt die Zuweisung der Suggestion rein
}
?>
Hallo Miguelito,
am 31.10.2011 - 16:07 Uhr
vielen Dank für Deine Hilfe.
Mit
<?phpfunction my_theme_process_page(&$variables) {
if (isset($variables['node'])) {
$variables['theme_hook_suggestions'][] = 'page__'. $variables['node']->type;
}
}?>
funktioniert es so wie ich es will.
naja warum einfach machen
am 31.10.2011 - 17:12 Uhr
naja
warum einfach machen wenn es auch umständlich geht ;)
Alyx Vance schrieb naja warum
am 31.10.2011 - 19:27 Uhr
naja
warum einfach machen wenn es auch umständlich geht ;)
Der Unterschied zwischen Node-Templates und Page-Templates ist dir aber bekannt, oder?
jup schon, bin halt mehr
am 31.10.2011 - 21:35 Uhr
jup schon, bin halt mehr davon ausgegangen das er nur blog nodes ändern wollte und nicht gleich das gesamte Layout