Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
Bedrock Mission!

Learn more

View all

Sign in to view all badges

Adobe Summit 2023 [19th to 23rd March, Las Vegas and Virtual] | Complete AEM Session & Lab list
SOLVED

How to read tag titles for tags entered in tagfield?

Avatar

Level 3

I have a tagfield included in my dialog. I want to print the titles for the tags being added in tagfield how can I achieve that? A code snippet for the same will be really useful.

1 Accepted Solution

Avatar

Correct answer by
Level 5

Hi @Manasi29 ,

Here is a code snippet of reading a tag from the page properties dialog, Similarly you can modify the code for the custom component dialog as well in the sling model.

//Getting all Tags from InheritanceValueMap
String[] allTags = pageProperties.get("cq:Tags", String[].class);
TagManager tagManager = request.getResourceResolver().adaptTo(TagManager.class);
for (String tags : allTags) {
Tag tag = tagManager.resolve(tags);
String tagTitle = tag.getTitle();
String tagName = tag.getName();
//Custom Code
}
  •  In the above snippet, referencing the InheritanceValueMap and getting resource resolver from request. You can also take resource resolver with System User.
  • If you have a single tag you can directly resolve it

 

Hope this could help you !!!

Regards

Shiv

4 Replies

Avatar

Correct answer by
Level 5

Hi @Manasi29 ,

Here is a code snippet of reading a tag from the page properties dialog, Similarly you can modify the code for the custom component dialog as well in the sling model.

//Getting all Tags from InheritanceValueMap
String[] allTags = pageProperties.get("cq:Tags", String[].class);
TagManager tagManager = request.getResourceResolver().adaptTo(TagManager.class);
for (String tags : allTags) {
Tag tag = tagManager.resolve(tags);
String tagTitle = tag.getTitle();
String tagName = tag.getName();
//Custom Code
}
  •  In the above snippet, referencing the InheritanceValueMap and getting resource resolver from request. You can also take resource resolver with System User.
  • If you have a single tag you can directly resolve it

 

Hope this could help you !!!

Regards

Shiv

Avatar

Level 3

@Shiv_Prakash_Patel here for tags added in page properties I can access with page properties inheritance value map but can you help me with how can I access all tags being added in tagfield added in dialog of my component?

Avatar

Level 5

Hi @Manasi29 ,

You can use ValueMap to read the tag value from the custom component. In the above case just replace the InheritanceValueMap with the ValueMap.

@Inject
private ValueMap valueMap;