Jump to:

17452 Posts in 4473 Topics by 1971 members

Archive

SilverStripe Forums » Archive » Function Needed in ChildrenOf() Control

Our old forums are still available as a read-only archive.

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

Page: 1
Go to End
Author Topic: 1153 Views
  • Garrett
    Avatar
    Community Member
    245 Posts

    Function Needed in ChildrenOf() Control Link to this post

    Hi,

    I am on a Grandchild level looping through my Grandparents, and I need to look at the URL's of each of them and treat one of them differently as I write them to the page. I do not know where to put the function that returns whether the URL is a certain one. Here is my structure:

    Experience (ExperienceHolder, URL = "experience")
    >>>News (NewHolder)
    >>>>>>NewsPage
    >>>Item 2
    >>>Item 3
    >>>Item 4

    I am in the NewsPage template, using <% control ChildrenOf(experience) %>, I am writing out News, Item 2, Item 3, Item 4, etc. Now, IF it is news, then I want to write something different. So in my control loop I have <% if IsCertainItem(URLSegment) %> logic, which I am sure will work. I just don't know WHERE to put this boolean function:

    function IsNewsItem($url) {
    if($url=="blah-blah-blah") {
    return true;
    }
    return false;
    }

    Because I am looping through the Children of Experience, of which theer are several, so it is unclear. I tried putting the function in NewsPage, ExperienceHolder, AND NewsHolder, and it is still not being called.

    Any help?? I run into this confusion a lot in SilverStripe-- not knowing WHERE to put my code.

    Thanks in advance,
    Garrett

  • simon_w
    Avatar
    Forum Moderator
    471 Posts

    Re: Function Needed in ChildrenOf() Control Link to this post

    why not just use

    <% if URLSegment = url %>

    As you'll be using that method of different page types, a good place for it would be the Page class

  • Garrett
    Avatar
    Community Member
    245 Posts

    Re: Function Needed in ChildrenOf() Control Link to this post

    DONE!

    Hey, I didn't think you could do string comparisons in the SS templates! I didn't even think to try it as I have been thwarted there before.

    What exactly ARE the rules of what you can't do?!

    THANKS SO MUCH!

    //Garrett

  • Willr
    Avatar
    Forum Moderator
    5489 Posts

    Re: Function Needed in ChildrenOf() Control Link to this post

    http://doc.silverstripe.com/doku.php?id=templates - has a list of things you can do in templates.

    1153 Views
Page: 1
Go to Top

Want to know more about the company that brought you SilverStripe? Then check out SilverStripe.com

Comments on this website? Please give feedback.