Raphael Bauduin wrote:
> is there a way to select one specific child, in contrast to iterating
> over all of them?
> Something like <children:each slug="child-slug"> or <child slug="child-slug">.
I have made a little patch for that to find a URL locally relative to
the current page:
--- standard_tags.rb (revision 363)
+++ standard_tags.rb (working copy)
@@ -396,9 +398,12 @@
}
tag 'find' do |tag|
if url = tag.attr['url']
- if found = Page.find_by_url(tag.attr['url'])
+ if url[0..0] != "/" and found = Content.find(:first, :conditions
=> ["slug = ? AND parent_id = ?", url, tag.locals.page.id])
tag.locals.page = found
tag.expand
+ elsif found = Page.find_by_url(tag.attr['url'])
+ tag.locals.page = found
+ tag.expand
end
else
raise TagError.new("`find' tag must contain `url' attribute")
You just use it like find: <r:find url="slug">...</r:find>
Cheers,
Oliver
_______________________________________________
Radiant mailing list
Post: [email protected]
Search: http://radiantcms.org/mailing-list/search/
Site: http://lists.radiantcms.org/mailman/listinfo/radiant