Community Buzz

page template by node type


  1. make a copy of your page.tpl.php file and rename it to be page-default.tpl.php.
  2. make further copies your page.tpl.php file it and rename them to be page-front.tpl.php, page-blog.tpl.php and page-book.tpl.php etcetera..
  3. using a text editor like notepad.exe or equivalent, modify the layout of each tpl.php file to suit your desires
  4. upload your new page-type.tpl.php layout files to your active theme folder
  5. Using a text editor like notepad.exe or equivalent, replace the contents of your page.tpl.php file with the snippet below
  6. Ensure that you have a page-default.tpl.php file as part of your collection of layouts.
  7. Upload your new page.tpl.php file to your active theme folder and your new layouts will take effect automatically

/**
* This snippet loads up different page-type.tpl.php layout
* files automatically. For use in a page.tpl.php file.
*
* This works with Drupal 4.5, Drupal 4.6 and Drupal 4.7
*/
if ($is_front) {/* check if it's the front page */
include 'page-front.tpl.php'; /*load a custom front-page.tpl.php */
return; }
if ($node->type == 'book') {/* check if it's a book page */
include 'page-book.tpl.php'; /*load a page-book.tpl.php */
return; }
if ($node->type == 'blog') {/* check if it's a blog node */
include 'page-blog.tpl.php'; /*load page-blog.tpl.php */
return; }
if ($node->type == 'image') {/* check if it's an image node */
include 'page-image.tpl.php'; /*load page-image.tpl.php */
return; }
if ($node->type == 'forum') {/* check if it's a forum node */
include 'page-forum.tpl.php'; /*load page-forum.tpl.php */
return; }
include 'page-default.tpl.php'; /*if none of the above applies, load the page-default.tpl.php */
return;
?>

Discussion

No comments for “page template by node type”

Post a comment

© 2003-2009 Hiveminds Magazine. Entries (RSS)
Powered by WordPress Theme by The Masterplan