Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

Forum Module

Discuss the Forum Module.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

Special Template for ForumHolder


Reply

4 Posts   654 Views

Avatar
DeklinKelly

10 May 2011 at 6:53am Community Member, 197 Posts

I want to use a special template named "ForumHolderFeed.ss" if the get paramager ?feed=1 is passed.

For example, this should be rendered with ForumHolderFeed.ss:
http://www.example.com/forums/?feed=1

I tried modifying ForumHolder.php, as shown below however that does not render the data in my template.

Avatar
simon_w

10 May 2011 at 8:09am Forum Moderator, 474 Posts

This is usually done using actions, so http://example.com/forums/feed would use the ForumHolder_feed.ss template file.

Getting it to consistently use ForumHolderFeed.ss for a specific get switch takes a lot more effort that most people realise. You can get it working in some cases by adding the check to an index() method, and returning $this->renderWith('ForumHolderFeed.ss'), though that won't work as soon as someone tries it on an action.

Avatar
DeklinKelly

10 May 2011 at 8:26am Community Member, 197 Posts

Thanks, simon_w for your reply.

How can I do this with an action? Do you have some sample code I could use or a link to documentation?

Avatar
simon_w

10 May 2011 at 8:29am Forum Moderator, 474 Posts

The only thing you may need to do is add the action to the $allowed_actions array. SilverStripe looks for ClassName_action.ss first when deciding which template to use.