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.

General Questions

General questions about getting started with SilverStripe that don't fit in any of the categories above.

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

problem with if blocks in templates


10 Posts   1168 Views


12 November 2009 at 7:21am Community Member, 901 Posts

What about a simple hack? Something along these lines:

function getFaculty($facultyType) {
   $type = str_replace('_', ' ', $facultyType);
   return DataObject::get( 'FacultyPage', "`FacultyType` = '$type'" );

That code simply replaces all underscores with spaces. Therefore underscore is an alias for space.
In the template you would then write:

<% control Faculty(Associate_Professor) %>
<p><a href="$Link">$Title</a></p>
<% end_control %>

Note that I put an underscore instead of a space there. And that I wrote Faculty instead of getFaculty, since you usually skip the "get" in the Template and it still maps to to correct function.


12 November 2009 at 7:46am Community Member, 114 Posts

that does the trick, thanks!