home | sitemap

Tagcloud

De 'module' tagcloud kan worden gebruikt om een tagcloud weer te geven.

Op de pagina waar de tagcloud getoond moet worden moet een zogenaamde macro worden opgenomen. Het cms zal deze macro bij het publiceren lezen en omzetten naar de lijst. De macro ziet er als volgt uit:

[­TAGCLOUD n=5 link=search ...] 

of de minimale variant

[­TAGCLOUD]

Aan de tagcloud kunnen verschillende parameters worden meegegeven, deze zijn:

type 

Behalve de tags van pagina's (standaard) kunnen ook de tags van afbeeldingen worden weergegeven. Geen type opgegeven of het type 'page' betekent tags van pagina's. type=img betekent een overzicht van tags van afbeeldingen (via de beeldbank-module).

link  Bepaald waar de link van een tag naar toe moet verwijzen. Als link niet wordt opgegeven of page is, dan verwijst de link van een tag naar de bijbehorende pagina. Als link=search wordt opgegeven, dan verwijst de link naar de zoekmachine met de tag als zoekopdracht.
n 

Het aantal tags dat moet worden getoond. Geen n opgeven betekent n=10.

steps Het aantal stappen waarin de tags moeten worden weergegeven. Op basis van alle bezoekersaantallen van alle pagina's bepaald het cms hoe groot de tag van elke afzonderlijke pagina moet worden weergegeven. Aan elke grootte/stap hangt dan een bepaalde opmaak zodat alle tags verschillende worden weergegeven (groter, cursief, vet, etc.). steps=7 is standaard en geeft het beste resultaat.
conpag Geeft in combinatie met type=img of link=search aan op welke pagina resp. de uitkomst van de beeldbank of zoekmachine moet worden getoond.
sort

De tags worden standaard in willekeurige volgorde getoond. De volgende sorteeropties zijn mogelijk:
- alpha: sorteer de tags op alfabet;
- count: sorteer de tags op aantal bezoeken;
- random: sorteer de tags willekeurig

template 

Voor een eigen weergave kan zelf een template worden bedacht. Dit template bevat de html voor 1 item in de lijst. De template kan de bekende TMPL_... constructies bevatten.

Een template kan gewoon in de map van de vormgeving staan en dient te beginnen met tagcloud_, bijv. tagcloud_xyz.html. Het heeft ook configuratie-bestand nodig: tagcloud_xyz.conf. Als de template bijv. tagcloud_mijnwolk.html heet, dan dient de redacteur op te geven:

[­TAGCLOUD ... template=mijnwolk ...]

De volgende variabelen zijn beschikbaar:
- xcms_tagcloud: het array met alle tags (te gebruiken met een TMPL_LOOP)
Per tag in xcms_tagcloud zijn de volgende gegevens beschikbaar:
- xcms_page: het id van de pagina;
_xcms_tag: de tag;
- xcms_total: het totaal aantal hits;
- xcms_url: de url naar de pagina of zoekmachine (afhankelijk van link=...)
- xcms_step: de stapgrootte (afhankelijk van step=... en multi=...)
- xcms_site: de naam van de website;
- xcms_style: de naam van de style.

Indien gewenst kunnen ook eigen variabelen aan de macro worden toegevoegd om zo specifieke instellingen per template mogelijk te maken. De naam van de variabele mag vrij gekozen worden, mits deze niet gelijk is aan een van de genoemde standaard parameters.
Om aan een template bijv. een eigen titel mee te geven kan het volgende worden opgegeven:

[­TAGCLOUD template=mijntemplate titel="Titel voor deze template"]

Zie het voorbeeld van de standaard flash tagcloud van het cms.

multi Multi staat voor multiplicatie (vermenigvuldiger). Deze instelling kan gebruikt worden in combinatie met een template zodat het gewicht van de verschillende tags beinvloed kan worden. Standaard hebben de tags een gewicht afhankelijk van het aantal stappen (steps). Als steps 7 is, dan hebben de tags 1-7 als gewicht (bepaald bijv. de kleur en/of lettergrootte). Door bijv. multi=4 op te geven worden de gewichten 4-28 (1x4, 2x4, ..., 7x4).
level Elke pagina/tag heeft een teller die afhankelijk is van hoe vaak de pagina is bezocht. Als 1 pagina erg vaak wordt bezocht ten opzichte van andere pagina's, dan kan het gebeuren dat die tag heel groot wordt weergegeven en de rest alleen nog maar heel klein. Door level=1 op te geven zal het cms de gewichten van de tags levelen: ze worden meer rondom het gemiddelde van alle gewichten verdeeld waardoor de verdeling meer evenredig is.

De uitkomst van de macro is gewoon een div met daarin hyperlinks:

<div class="xcms_tagcloud">
  <a class="s0 cloudlink" href="/..." rel="nofollow">Tag 2</a>
  <a class="s7 cloudlink" href="/..." rel="nofollow">Tag 1</a>
  <a class="s3 cloudlink" href="/..." rel="nofollow">Tag 3</a>
  <a class="s0 cloudlink" href="/..." rel="nofollow">Tag 5</a>
  <a class="s4 cloudlink" href="/..." rel="nofollow">Tag 4</a>
</div> 

 Deze kunnen worden opgemaakt via eigen css. Standaard geeft het cms de volgende css mee (via xcms.css):

.xcms_tagcloud {
  line-height: 195%;
  text-align: center;
}
.cloudlink {
  padding: 0 4px;
  text-decoration: none;
}
.cloudlink:hover {
  text-decoration: underline;
}
.s0 {
  font-size: 80%;
}
.s1 {
  font-size: 80%;
  font-weight: bold;
}
.s2 {
  font-size: 100%;
  font-weight: bold;
}
.s3 {
  font-size: 120%;
  font-weight: bold;
}
.s4 {
  font-size: 140%;
  font-weight: bold;
}
.s5 {
  font-size: 160%;
  font-weight: bold;
}
.s6 {
  font-size: 180%;
  font-weight: bold;
}
.s7 {
  font-size: 200%;
  font-weight: bold;
}