[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
path_auto.)
Cheers,
Tim
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