IPublishedContent Collections
All collections of IPublishedContent
are IEnumerable<IPublishedContent>
. This means that all C# LINQ statements can be used to filter and query the collections.
Collections
.Children
Returns a collection of child items available in the current culture, below the current content item.
.ChildrenForAllCultures
Returns a collection of child items for all cultures, below the current content item, regardless of whether they are available for the current culture.
.Children(string culture = null)
Returns a collection of child items available in the specified culture with a default of the current one, below the current content item.
.Ancestors()
Returns all ancestors of the current page (parent page, grandparent and so on)
.Ancestor()
Returns the first ancestor of the current page
.AncestorsOrSelf()
Returns a collection of all ancestors of the current page (parent page, grandparent and so on), and the current page itself
.Descendants()
Returns all descendants of the current page (children, grandchildren etc)
.DescendantsOrSelf()
Returns all descendants of the current page (children, grandchildren etc), and the current page itself
.OfTypes
Filters a collection of content by content type alias
Filtering, Ordering & Extensions
Filtering and Ordering are done with LINQ.
Some examples:
.Where
.OrderBy
.GroupBy
Groups collection by content type alias
.Take(int)
Return only the number of items for a collection specified by the integer value.
.Skip(int)
Return items from the collection after skipping the specified number of items.
You can combine Skip and Take when using for paging operations
.Count()
Returns the number of items in the collection
.Any()
Returns a boolean True/False value determined by whether there are any items in the collection
Filtering Conventions
Some filtering and routing behaviour is dependent upon a set of special naming conventions for certain properties. See also: Routing Property Conventions
.IsVisible()
If you create a checkbox property on a document type with an alias umbracoNaviHide
then the value of this property is used by the IsVisible()
extension method when filtering.
Use case: When displaying a navigation menu for a section of the site, following this convention gives editors the option to 'hide' certain pages from appearing in the section navigation. (hence the unusual umbracoNaviHide property alias!)
Last updated