tagfn provides methods to find both content that is tagged and tags applied to content items.These templating functions are provided by the Content Tags module. The java class implementing 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]

#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))