Administrator
Administrator
fretzl   2010-09-30, 19:01
#1
Is it somehow possible to use the Zenpage "pages" functionality to have different pages render in a totally different layout without the use of [i]codeblocks[/i] and [i]extra content[/i].
I can do only somuch with [i]codeblocks[/i] and [i]extra content[/i].
Administrator
Administrator
acrylian   2010-10-01, 08:57
#2
You can of course add checks within the pages.php theme page to render certain pages with a different layout / different css using the object model. Checks like `if($_zp_current_zenpage_page->getTitlelink() == "<page desired>" {
do something
} else {
do something else
} `

or if you want quite a lot different layout use the `switch()` function for that.

You can also use normal other custom pages if you pass the titlelink of a page. Using the object model you basically can call a page where ever you want. However that would be outside the normal Zenpage context then.
Administrator
Administrator
fretzl   2010-10-01, 17:34
#3
Thanks @acrylian!

However, I was thinking of someting else.
Say you make a new custum theme page with a different layout.
(different from pages.php)
And then in in the admin -> pages you could choose in which page your content would be displayed.

Just thinking out loud :-)
Administrator
Administrator
acrylian   2010-10-01, 18:11
#4
Hm, you can do that actually you just have to pass the titlelink to that page and create a page object. You will however get a different url like `zenphoto/page/<name of your custom page>/<possible page titlelink>`. You probably could even create a custom option for this.

I think if we would do such a feature it would/should be like the album themes to stay on one kind of behaviour for all items.
Administrator
Administrator
fretzl   2010-10-02, 07:33
#5
If you think this could be a sensible feature I'd be happy to sponsor it :-)
Administrator
Administrator
acrylian   2010-10-02, 10:04
#6
I would have at least an idea how to do this similar to your first idea (e.g. using pages.php as a wrapper to load other theme pages).

That could automatically load a script page with for example the name `pages-<titlelink of the page to use it>.php` if it exists. But I see that a selector might be more convenient for reusing layouts, I think that might be possible as a plugin (but will require the theme to be setup correctly).

If you like sent an e-mail.
Member
Member
sbillard   2010-10-03, 01:21
#7
Probably you can do this already by creating a filter attached to the `load_theme_script` filter.

This filter is applied just prior to loading the script from the theme for the particular object. Your filter would check to see if it is loading a page and substitute a different script name for the one passed.
Administrator
Administrator
acrylian   2010-10-03, 10:43
#8
Good idea, that filter is ideal for that.
  
Powered By MyBB, © 2002-2026 MyBB Group.
Made with by Curves UI.