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


Reply


10 Posts   1188 Views

Avatar
banal

Community Member, 901 Posts

12 November 2009 at 7:21am

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.

Avatar
ttyl

Community Member, 114 Posts

12 November 2009 at 7:46am

that does the trick, thanks!