[development] how template suggestion inherits default header&footer of page.tpl.php

T L tloud365 at gmail.com
Wed Jan 6 13:02:39 UTC 2010

Hi Wang,

What kind of content are you trying to customize?  If it's a node, you can
do something like node-my_node_type.tpl.php.  This would change the theme
around the various node types, but use a common page.tpl.php file to supply
the header, menu, footer, etc.

You can override all of the *.tpl.php files like block, page, comment, etc
in slightly different ways.  Which is generally, I think, how you would do
something like this dependent on the kind of content you want to theme.  As
a specific example, you can just create page-news.tpl.php for a unique
?q=news theme.  (There's a gotcha though, so just make sure it's the
original path, you will need to adjust if you use path aliasing like


On Wed, Jan 6, 2010 at 6:50 AM, Wang Zi Feng <frank.zifeng at gmail.com> wrote:

> Hi,
> There is a rookie question.
> I use template_preprocess_page function in a module to specify a template
> file (news.tpl.php) based on the hook_menu path (?q=news), utilizing the
> news.tpl.php every time click on ?q=news, it works fine.
> But I have to copy the footer&header from page.tpl.php to the new template
> file (news.tpl.php) to print them, I wonder if there is an approach to
> inherit automatically the footer and header section?
> here is the code
> function news_menu(){
>      $items['news'] = array(
>         'title' => 'News',
>         'page callback' => 'news_page_default',
>         'access callback'=>TRUE,
>         'type' => MENU_CALLBACK,
>         );
>      return $items;
> }
> function template_preprocess_page(&$variables){
>     if(drupal_strtolower(arg(0))=='news'){
>     $variables['template_file']='news' ;
>     }
> }
> Thanks
> Wang

Tim Loudon
(781) 686-6096
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.drupal.org/pipermail/development/attachments/20100106/16f6989d/attachment.html 

More information about the development mailing list