Afficher tous les tags d'un site Share

cancel
Showing results for 
Search instead for 
Did you mean: 
kizux_3453
Member II

Afficher tous les tags d'un site Share

Bonjour à tous,
Après quelques recherches sur les tags pour les sites share j'ai trouvé que les tags sont stockés dans :
categoryRoot/taggable
C'est bien tous les tags qui y sont stockés et pas seulement les tags d'un site.

Donc je continue à chercher avec le node browser dans les noeuds qui représentent les sites, il y a une propriété qui se nomme tagScopeCache et le noeud a l'aspect tagscope. Quand je regarde la valeur de cette propriété c'est une URL qui mène vers une page avec tous les noms des liens utilisés pour le site et le nombre d’occurrence pour chacun.

Ce que j'aimerai, c'est récupérer le nom des tags et leurs occurrences à partir de l'API JavaScript.

Comme dis sur le wiki j'ai testé la méthode:
Get tags
function getTags();

et comme dit ici http://dev.alfresco.com/resource/docs/java/repository/org/alfresco/repo/tagging/TaggingServiceImpl.h...
getTags(org.alfresco.service.cmr.repository.NodeRef nodeRef)
          Get all the tags on a node

ce qui donne le code :

js:
var tags = taggingService.getTags(companyhome.childByNamePath("sites").childByNamePath("monsite").nodeRef);
var tags2 = companyhome.childByNamePath("sites").childByNamePath("monsite").getTags();

model.tags= tags;
model.tags2 = tags2;

html.ftl
<html>
<body>
<#list tags as tag>
${tag.name}
</#list>
<#list tags2 as tag>
${tag.name}
</#list>
</body>
</html>

Je n'ai pas d'erreur mais une page blanche, ca me parait logique que l'API ne trouve rien car je ne vois pas à partir du node browser ou peuvent être stockées ces informations.
Pourriez vous éclairer ma lanterne ?
Merci beaucoup !
1 Reply
kizux_3453
Member II

Re: Afficher tous les tags d'un site Share

Voici la bonne façon de procéder :
companyhome.childByNamePath("sites").childByNamePath("monsite").tagScope.getTags();

Apparemment il existe un objet tagScope pour les noeuds de type site, c'est dans celui ci que vos tags sont contenus. (je l'ai trouvé un peu au hasard, il n'existe pas de la doc la dessus ?)

Pour récupérer le nom dans le ftl :

${tag.getName()}

Résolu !  :mrgreen: