Nuage (de mots-clés)

L’article «Afficher les mots-clés en faisant varier la taille de la police» de BoOz et Fil permettait déjà d’afficher un nuage de mot-clés.

Le présent article reproduit exactement les mêmes résultats, puisqu’il s’agit de son adaptation sous forme de modèles, le tout sous forme de plugin pour faciliter l’installation.

Important: il faut que les statistiques de SPIP soient activées pour que le plugin fonctionne

Contenu du plugin

Il contient deux fichiers html, les modèles nuage.html et nuage_popularite.html. Les fichiers php, quant à eux, définissent un filtre |nuage ou |nuage_pop. On insère aussi quelques styles css dans l’entête de la page, ce qui nécessite l’emploi de la balise #INSERT_HEAD.

Utilisation

Une fois le plugin activé, vous pouvez faire appel aux modèles selon les deux méthodes classiques:

  • dans un squelette html
    • [(#MODELE{nuage})]
    • [(#MODELE{nuage}{id=4})]
  • dans un article:
    • <nuage1>
    • <nuage1|popularite>
    • <nuage|> (notation permettant d’afficher un nuage sans sélectionner de groupe de mots-clés)

La valeur passée en paramètre est facultative et correspond à l’identifiant d’un groupe de mots-clés, si on souhaite réduire le nuage à un seul groupe de mots.

De plus, [(#MODELE{nuage}{id_article=10})], ou <article10|nuage> affichent le nuage en exposant les mots-clés associés à l’article passé en paramètre.

Personnalisations

Cadeau de Noël ou Oeuf de Pâques

Pour faire une sélection de plusieurs groupes de mots-clés et générer un seul nuage, on profite du fait que le critère de sélection dans le modèle est une expression régulière. On peut alors écrire {id=4|10} pour sélectionner les mots des groupes 4 et 10. Attention, ça marche seulement pour l’appel depuis un squelette.

A l’inverse on peut exclure certains groupes de mots clés en utilisant le critère de sélection notid. Celui-ci fonctionnant également selon une expression régulière, la syntaxe permettant de ne pas prendre en compte les groupes 5 et 11 est donc de la forme: {notid=5|11}

Discussion

133 discussions

  • 1

    j’utilise le plugin Nuage dans le site des Cramés de la bobine par exemple
    https://www.cramesdelabobine.org/spip.php?article4404
    et j’aimerais que les valeurs des mots clés s’affichent par ordre alphabétique.
    Pouvez-vous m’aider à résoudre ce problème ?

    • A l’exception du premier, les mots clés s’affichent bien dans l’ordre alphabétique. Le premier qui apparait (Naravane Vaiju) n’aurait-il pas été préfixé par un numéro d’ordre ?

    Reply to this message

  • 2

    Bonjour et bonne année,

    J’aimerai faire apparaitre un nuage de mots-clés pour d’autres objets éditoriaux que des articles (partitions, livres, textes libres, pièces de théâtre,...). Les statistiques sont activées pour chaque objet (depuis plus de 24h) mais rien ne se passe. Le nuage fonctionne parfaitement pour les articles mais pas pour les autres objets éditoriaux. Auriez-vous une idée de comment procéder ?

    Merci :-)

    • PS :
      j’ai essayé d’ajouter un fichier nuage_popularite_livre.html dans le plugin en modifiant ARTICLES en LIVRES et id_article en id_livre

    • J’ai finalement contourné le soucis que j’avais avec ma propre tambouille (pas la plus efficace car basée sur l’existence de l’utilisation des mots-clés pour chaque objet éditorial et pas sur la popularité donc ça mouline un peu plus). Mais le résultat est similaire et permet également d’être ad hoc avec le plugin « mots arborescents ».

    Reply to this message

  • 2

    je n’arrive pas à faire apparaître un «nuage de mots-clé» sur ma page sommaire. Il me semble avoir pourtant appliqué les consignes. quelqu’un pourrait-il me décrire la démarche de A à Z
    s’il vous plaît ?
    https://aleaetillustre.ouvaton.org/?var_mode=calcul

    • Bonjour

      Votre squelette semble bon avec l’appel du nuage.

      Je viens de regarder
      Pour que le nuage fonctionne, il faut que les statistiques soient activées.
      En effet le calcul du nuage se base sur la popularité des articles.

      Il faut donc :
      -  activer les statistiques de SPIP
      -  attendre 24h pour avoir des popularités mise à jour (la popularité apparait avec coté des boutons recalculer dans l’espace public)

      Bonne chance

    • Merci beaucoup (depuis la première réponse reçue à une question sur l’utilisation de SPIP, sur IRC, je suis toujours épaté par la gentillesse et l’efficacité des gens qui me répondent… et ça doit faire 15 ans) :)

    Reply to this message

  • 4

    Bonjour,
    Je voulais signaler que le plugin fait planter un site sous SPIP 3.2.12 au moment de la mise à jour à la version 5.0.1.
    Merci de m’informer si vous réussissez à résoudre ce bug.

    Cordialement,
    Virginie

    • Bonjour,

      il faudrait en savoir plus
      -  que veut dire “fait planter”
      -  version de PHP ?
      -  avez vous quelque part accès aux logs php ?

    • Bonjour.

      • “Planter” signifie dans ce cas qu’on a une page blanche aussi bien dans l’espace privé que sur le site public : illustration à l’activation.
      • Il suffit ensuite de supprimer le dossier nuage en SFTP et le site est OK.
      • Avec la version 4.0.8 du plugin cela fonctionne parfaitement.
      • La MAJ ou l’activation de la version 5.0.1 fait planter.
      • Version de PHP : 5.6.40
      • error_log contient : [Mon Jan 24 14:10:48.944693 2022] [:error] [pid 166] [client ...] PHP Parse error: syntax error, unexpected ’?’ in /apps/var/www/html/spip/plugins/auto/nuage/v5.0.1/nuage_fonctions.php on line 63
      • La ligne 63 est celle-ci : $nuage[’poids’][$id_mot] = $nuage[’poids’][$id_mot] ?? 0;

      Merci d’avance.

    • Une petite relance...

    Reply to this message

  • Bonjour,
    SPIP 3.2.7 plugin téléchargé à l’instant, dernière version.
    Je voudrais afficher tous les mots-clés du groupe thématique, n°4, mais le copier-coller

    [(#MODELE{nuage_popularite}{id=4})]

    renvoie tous les mots-clés utilisés sur le site et non pas uniquement ceux du groupe 4.
    Je ne vois pas du tout d’où ça peut venir.
    Merci de votre aide.

    Reply to this message

  • Fabre Henri

    Je viens d’installer ce plugin et j’ai créé un article avec le code <nuage2> cela fonctionne pour dénombrer les mots clés dans les articles. Est-il possible d’adapter le plugin pour que le dénombrement porte sur les mots-clés des rubriques ?

    mon site : http://www.cramesdelabobine.org

    Reply to this message

  • Pascal FORTIN

    Bonjour,

    Je découvre ce WE un dysfonctionnement sur le plugin “Nuage”.
    Est-ce lié aux dernières mises à jour de “nuage” (11/10/2017) ou de SPIP (13/10/2017), en tous les cas il est devenu impossible de ne spécifier l’affichage des mots clés de 1 seul groupe de mots clés.
    Voir http://www.clg-capucins-melun.fr
    Je vous joins aussi une copie d’écran.
    Merci pour vos conseils.
    Pascal FORTIN

    Reply to this message

  • 3

    Bonjour,
    Je viens de découvriir ce plugin que je trouve génial, merci à ces auteurs
    Bien entendu j’ai testé et dans l’espace privé les mots clé apparaîssent mais une fois sur l’espace public rien, j’ai beau recalculer la page toujours rien, supprimé le cache via Ftp, rien. je cherche voir si jai oublié quelque chose mais je ne vois pas. Merci de m’aider.

    • Je me réponds, j’ai compris, Dans ma page sommaire.html j’ai installé [(#MODELE{nuage}{notid=1|2})] à l’endroit ou je voulais qu’apparaisse le nuage, et le tour est joué. merci de m’avoir lu.

    • et oui, je suis de retour, j’y comprends plus rien, j’ai appliqué sur un autre site la même méthode et voilà qu’il m’envoie un message “Aucun squelette modèles/nuage n’est disponible...”, alors là j’ai vraiment besoin d’explications, j’ai vérifié sur l’autre site et sur squelettes/modèles il n’y a rien
      Merci

    • Bon,
      Il semble que tout le monde soit parti, je laisse quand même un message:
      dans la page sommaire.html, étant donné que je n’ai que deux groupes de mots clés seul le deuxième m’intéresse alors j’ai indiqué l’appel ainsi: [(#MODELE{nuage}{notid=1})] et le résultat est le suivant

    Reply to this message

  • 1

    Hello,
    Bon, moi un truc m’échappe.

    Contexte : SPIP 3.0.17 en dev HTML5 pour une migration d’un vieux squelette de spip. Pas de forums, juste des articles. Je reprends tous les fichiers.

    J’ai activé les mot-clefs dans le backoffice, mais rien n’y fait.
    Je n’arrive pas à afficher le nuage

    Balise intégrée dans navsub : [(#MODELE{rubrique_nuage})]

    Ais-je oublié quelque chose ?
    Merci ;)

    • Bonjour,
      Je suis également sous 3.0.17 avec nuage 4.0.6. Je souhaite un nuage sur les documents, mais je test en premier lieu en page sommaire avec des mots clés sur article et ne parviens pas à afficher le nuage malgré l’insertion de [(#MODELE{nuage})].
      Je ne trouve pas la réponse.
      Merci

    Reply to this message

  • 1

    Bonjour,

    J’aimerai utiliser ce plugin différemment, mais le modèle n’existe pas (encore).

    Il s’agirait de générer un nuage présentant les litres des rubriques de niveau 2 de certains secteurs. Evidemment, cet affichage en nuage serait pondéré par la popularité ou le nombre d’articles des secteurs.

    Cela vous parait-il accessible aisément ?

    • Salut,

      je en sais plus trop où j’avais trouvé le truc (ça fait qqs temps), mais ça fonctionne :

      <div id="evenements">
      	<h1>Événements</h1>
      	<div><?php
      		$pop = array();
      		<BOUCLE_evenements(RUBRIQUES){par hasard}{id_parent=1}>
      			$titre[#ID_RUBRIQUE]='[(#TITRE|texte_script)]';
      			$url[#ID_RUBRIQUE]='#URL_RUBRIQUE';
      			<BOUCLE_art(ARTICLES){branche}>
      			</BOUCLE_art>
      			$pop[#ID_RUBRIQUE]=#TOTAL_BOUCLE; # Nombre d'articles pour cette rubrique et ses sous-rubriques
      			</B_art>
      		</BOUCLE_evenements>
      
      		$maxpop = @max($pop); # Plus grand nombre d'article pour un mot
      
      		foreach ($titre as $id => $t) {
      			$score = $pop[$id]/$maxpop; # entre 0 et 1
      			$s = ceil(4*$score);
      			$t = str_replace(' ', '&nbsp;', $t);
      			$l = "<a href='".$url[$id]."' class='nuage".$s."'>$t</a>";
      			echo "$l &nbsp; \n";
      		}
      	?></div>
      </div>

      Ça a visiblement été mis en ligne (quelle bonne idée) par là : http://contrib.spip.net/boucle-nuage-sur-rubriques

    Reply to this message

Add a comment

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Who are you?
[Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom