This documentation is still in progress. We are working hard to update all our screenshots to the new Magnolia 6 style. Please bear with us.

Page tree
Skip to end of metadata
Go to start of metadata

tagfn helps you find content by tag. You can also find out what tags are applied to a particular content item. The tagfn templating functions are provided by the Content Tags module. The Java class that implements the methods is TagTemplatingFunctions

Getting content by tag and adding tags to the tags trait

The method searches content by workspace, root path and a list (array) of tags. Returned content nodes must have at least one of the tags of the given tag array.

Method signature

Set<ContentMap> getContentByTags(String workspace, String rootPath, String... tagsArray)

Arguments

workspace

required

The workspace to search in.

rootPath

required

The root path of the node to search in.

tagsArray

required

Any array of tags.

Returns

Set of  ContentMap objects.

Usage

/using-content-tags/templates/components/getContentByTags.ftl
    [#assign geniusContacts=tagfn.getContentByTags("contacts", "/", ["genius", "artist"])! /]
    [#if geniusContacts?has_content]
        [#list geniusContacts as contact]
        ${contact.firstName!""} ${contact.lastName!""}[#sep], [/#sep]
        [/#list]
    [/#if]

Getting tags by content

Returns the tags of a given content node.

Method signature

Set<String> getTags(ContentMap content)

Arguments

content

required

The content map whose tags you want to find.

Returns

Set of Strings.

Usage

    [#assign contentItem = cmsfn.contentByPath("/ppicasso", "contacts")! /]
    [#assign tags = tagfn.getTags(contentItem)! /]
    [#if tags?has_content]
        ${contentItem.firstName!""} ${contentItem.lastName!""} has the following tags:
        [#list tags as tag ]
            ${tag}[#sep], [/#sep]
        [/#list]
    [/#if]