[support] using panels to template system pages?

Metzler, David metzlerd at evergreen.edu
Thu Feb 5 16:30:23 UTC 2009


This is a bit hackish but I've don'e this successfully using panels2 by
using custom PHP code.  It involves being able to read a module's
menu_hook though and write a little PHP,  and being careful about
security (cause you can bypass menu security this way. 

The basic outline: 

1.  Determine the function being called in the menu_hook, 
1.  Create a minipanel (just to abstract the logic and security)
2.  Ad a snippet of custom PHP code that calles the function. 
3.  Be extra careful to set security on this minipanel as it bypasses
the menu security mechanism. 

In your example, the forums page could be loaded into any Panel by
including the following custom php pane in your mini-panel. 

$block->content = forum_page(); 

This mini-pane can then be inserted into any block you have.  Here's a
more intense example where I'm passing context data to the php custom
page to add the view cases page to a form that passes node id into the
function being called. 

$block->content =
casetracker_cases_overview($context->data->nid,'state:6'); 

Your question has sparked some interesting ideas for me with regard to
creating a module that does this more generically based on the data
that's already in the  menu system :).  Especially once we get to drupal
6 and wildcards in the path.  Wow the possibilities are endless. 

Hope this helps. 





 

-----Original Message-----
From: support-bounces at drupal.org [mailto:support-bounces at drupal.org] On
Behalf Of Christopher M. Jones
Sent: Wednesday, February 04, 2009 8:57 PM
To: support at drupal.org
Subject: Re: [support] using panels to template system pages?

That's plan B. Thanks much for your suggestion. I was hoping that there
would be a way to do this with panels, because that would be useful in
other applications. For example, I'd love to bring group forums into the
group home page.

Steve Kessler wrote:
> To add text above the page you might want to look at just using 
> blocks. If you have a region (or add a region) above the content 
> region or put a block in the content region you can usually achieve 
> this. You can then change the settings for the block to only show on
specific pages.
> 
> I hope this helps.
> 
> -Steve
> 
> 
> Steve Kessler
> Denver DataMan
> 303-587-4428
> Sign up for the Denver DataMan Free eNewsletter
> 
> 
> -----Original Message-----
> From: Christopher M. Jones [mailto:cjones at partialflow.com] 
> Sent: Wednesday, February 04, 2009 10:05 AM
> To: support at drupal.org
> Subject: [support] using panels to template system pages?
> 
> I'd like to use panels to do things like add text to the top of the 
> /forum page, but I don't see how to add this as content into the
panel. 
> I'm guessing it can't be done, or can't be done easily. Can someone
> 
> a. Tell me how to do it
> 
> b. Suggest another strategy.
-- 
[ Drupal support list | http://lists.drupal.org/ ]


More information about the support mailing list