SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs On SPIP-Zone, 237 visitors now

Home > Site navigation > Tagcloud > Nuage de mots-clés > A tag cloud written exclusively in spip

A tag cloud written exclusively in spip

the font size of each tag depends on the number of elements associated with that tag

12 February 2009 – by k3utchi

All the versions of this article: [English] [français]

1 vote

All contributions published for previous SPIP versions

Displaying a list of all used tags, the font size of each tag depends on the number of elements associated with that tag

A keyword cloud exclusively written in SPIP. The size of each keyword depends on :

  • the number of articles
  • the number of folders
  • the number of sites that are associated with that keyword

Integrating the cloud into a template

The following code can be used in an include, or added to a template. In the case of an include, you can use the class parameter to specify the class to be applied to the <ul> tag.

For example, if you save the loop in a file called inc-keywordcloud.html, you can write the inclusion like this in your template :

<INCLURE{fond=inc-keywordcloud}{class=your_class}>

Of course in this case you will have to add on the first line of the included file a value for the cache : #CACHE{n}, where n is the lifespan of the list before it is recalculated, measured in seconds. According to the frequency of the changes in the list, choose an appropriate value. #CACHE{3600*24} for example for a daily update of the list.

In the final page, it will result in an unordered list like this :

<div class="tags">
<h3>Tags</h3>
<ul class="your_class">
        <li>...
        ...</li>
</ul>
</div>

The first loop scoremots calculates the score of each keyword and stores it in an array (score). It also gets the upper and lower scores.

The second loop lesmots displays the list of all keywords and sizes them according to their score.

Styling

Here are the lines you have to add to the css, in order to have a cloud-like list, with centered inline keywords.

Setting the font sizes

You can modify a couple of parameters :

Coefficients

To calculate the score of each tag, a folder gives 2 points, an article 1 point and a site 0.25 point.

You can change these coefficients in the following line :

[(#SET{rub,[(#GET{rub}|mult{2})]})][(#SET{art,[(#GET{art}|mult{1})]})][(#SET{sit,[(#GET{sit}|div{4})]})]

Smallest and biggest keywords

The default in the given code is 0.85em for the smallest, and a range of 1.5em to the biggest, i.e 2.35em. Change the values in the following lines to get different sizes and range.

#SET{coef, #GET{place}|div{#GET{ecart}}|mult{1.5}}
[        (#GET{score#ID_MOT}|>{0}|?{<li><a style='font-size:[(#GET{coef}|plus{0.85}...

You can also choose not to display keywords with a score under a chosen minimum value (zero in the given code, which means all tags will be displayed, you can change it in the same above line)

Remarks

The loop excludes all keywords when their group name starts with «_», so that you can easily exclude non semantic groups as long as you use an underscore as the first letter of the group name.

Default order is by group, then alphabetically within each group.

Terms of use



CC-GNU GPL

This software is licensed under the CC-GNU GPL version 2.0 or later.

updated on 3 November 2009

Back to top

Comment on this article

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 Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Add a document

Back to top

Here they're talking

  • (fr) Cycle2

    7 août 2014 – 104 commentaires

    La seconde version de la librairie Javascript « jQuery Cycle », qui permet de produire des diaporamas, se nomme « Cycle2 » : http://jquery.malsup.com/cycle2/. Voici cette nouvelle librairie mise en plugin pour SPIP. Si vous utilisez déjà « jQuery (...)

  • (fr) CleverMail

    20 janvier 2010 – 635 commentaires

    CleverMail est un plugin permettant d’envoyer des lettres d’informations à des abonnés depuis SPIP. Issu au départ d’un développement libre complètement indépendant de SPIP, il a connu une première version pour SPIP 1.9 avant d’être complètement réécris (...)

  • (fr) SPMC : Squelette par mot clé V2.0

    21 septembre 2009 – 48 commentaires

    Ce plugin prend la suite de squelette par mot clef V1.92 qui ne fonctionnait plus sous SPIP 2.0.x. Avec l’accord de Mortimer qui n’a plus le temps de le maintenir, je prend donc la suite. Présentation du plugin « Squelette par mot clé V2.0 » Le (...)

  • (fr) Sarka-SPIP 3

    15 septembre 2009 – 211 commentaires

    Si la lignée 3 de Sarka-SPIP a été l’occasion de refaire presque entièrement le code du squelette elle continue à évoluer et à s’améliorer au fil des versions. Nous ne saurions trop conseiller aux nouveaux utilisateurs - et aussi aux anciens - (...)

  • (fr) Paiement avec Formidable

    16 février 2015 – 53 commentaires

    Ce plugin « Paiement avec Formidable » permet d’ajouter une étape de paiement à la fin de la saisie d’un formulaire créé par le plugin Formidable. Il le complète et nécessite par ailleurs le plugin bank qui gère l’interface technique avec les prestataires (...)