I have a macro that prints the labels on a page, so that I show display the labels above the fold in our knowledge base.
I've actually created two, which I have sourced from here and here.
Both work perfectly well, in that they print the labels on the page.
But.
I have recently noticed that when users have clicked "Save for Later", this then gets included as a label. In the one macro, this gets printed just as the word "favourite", in the other, it is printed as "my:favourite" (or the username of the person it not myself).
If multiple people have saved the page, then that many "favourites" appear in the macro.
Question: How does one exclude the favourites?
(and why are these labels, in the first place?)
I was unaware of these labels, but they make sense as an easy way to mark these pages.
To fix your issue, you are going to have to filter your output (test each label to see if it contains "favourite" before listing on a page.
Thanks @Bill Bailey , it works fine:
#foreach ($label in $content.getLabels())
#if ($label.getName() != "favourite")
<a id="clickable-label" class="aui-label" href="$req.contextPath/label/$space.key/$label.getName()">$label.getName()</a>
#end
#end
And it could be improved by using a ' while ' condition ;-)
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.