Hi Will! Just support the JIRA issue to fix the content?ancestors built-in for Nodes in Freemarker...
See: http://jira.magnolia-cms.com/browse/MAGNOLIA-2945 I've already posted something that should be a fix, perhaps if more people vote for it, it can make it into the next release... Regards from Vienna, Richard Von: [email protected] [mailto:[email protected]] Im Auftrag von Will Scheidegger Gesendet: Freitag, 25. Februar 2011 10:45 An: Magnolia User-List Betreff: Re: AW: [magnolia-user] STK question: inherited singelton link list like meta nav? Thanks for the feedback, everyone! I'm glad that my code seems to be acceptable. However I guess I should open a JIRA issue asking for a "getAncestor" method in STKUtils... -will On 25.02.2011, at 10:31, Unger, Richard wrote: Hi Will! I can confirm that we are doing similar "tricks" to handle things like sidebar content. It doesn't seem like such a bad solution to me, and the code does not seem so "dirty" to me either. On a similar note, I also wrote some macro/model code to do the function "inherit first" --> since stk.inheritContent() is an "inherit all" type function, where all the content named "iconLinks" (to use your example) from all ancestor nodes of content is gathered in a collection. We found we wanted to walk up the tree to find the first instance of "iconLinks" and then stop there, effectively allowing us to make settings at top level pages, but 'override' them at deeper level pages if needed. Regards from Vienna, Richard Von: [email protected]<mailto:[email protected]> [mailto:[email protected]] Im Auftrag von Will Scheidegger Gesendet: Donnerstag, 24. Februar 2011 23:26 An: Magnolia User-List Betreff: Re: [magnolia-user] STK question: inherited singelton link list like meta nav? Answering my own question... something like this below did the job. But I don't think it would win a price in a code beauty contest... [#assign cms=JspTaglibs["cms-taglib"]] <ul id="icon_links"> [#assign iconLinksModel = stk.inheritContent(content, "iconLinks") /] [#if iconLinksModel.exists] [@cms.contentNodeIterator contentNode=iconLinksModel.content!] [@cms.includeTemplate /] [/@cms.contentNodeIterator] [/#if] [#if mgnl.editMode && content.@level<mailto:content.@level> == 1] <li class="icon_link">[@cms.newBar contentNodeCollectionName="iconLinks" newLabel="Neues Icon-Link" paragraph="schweizmobilcardExternalImageLink,schweizmobilcardInternalImageLink" /]</li> [/#if] </ul> On 24.02.2011, at 18:16, Will Scheidegger wrote: Dear Magnolians We need to add a list of "sponsor" (icon, link, name) on each page. It pretty much boils down to the same functionality the meta navigation offers. But the meta navigation uses special methods the model provides. Now of course I could extend STKTemplateModel and copy the meta navigation methods. But can I do the same without modifying the model? Whatever I have tried so far has failed miserably. I've done this in JSP templates, but somehow Freemarker is giving me a hard time... for instance: How can I get the ancestor node at level 1? ${content.getAncestor(1)} does not work because of the Magnolia Freemarker "features"... Thanks for any pointers! -will ---------------------------------------------------------------- For list details see http://www.magnolia-cms.com/home/community/mailing-lists.html To unsubscribe, E-mail to: <[email protected]<mailto:[email protected]>> ---------------------------------------------------------------- ________________________________ ---------------------------------------------------------------- For list details see http://www.magnolia-cms.com/home/community/mailing-lists.html To unsubscribe, E-mail to: <[email protected]<mailto:[email protected]>> ---------------------------------------------------------------- ________________________________ ---------------------------------------------------------------- For list details see http://www.magnolia-cms.com/home/community/mailing-lists.html To unsubscribe, E-mail to: <[email protected]<mailto:[email protected]>> ---------------------------------------------------------------- ________________________________ ---------------------------------------------------------------- For list details see http://www.magnolia-cms.com/home/community/mailing-lists.html To unsubscribe, E-mail to: <[email protected]<mailto:[email protected]>> ---------------------------------------------------------------- ---------------------------------------------------------------- For list details see http://www.magnolia-cms.com/home/community/mailing-lists.html To unsubscribe, E-mail to: <[email protected]> ----------------------------------------------------------------
