PluXml.org

Blog ou CMS à l'Xml

Vous n'êtes pas identifié(e).

#1 09/07/2011 08:36:42

bankai
Pluxml Forever :)
Lieu : Saint-Pierre-la-cour
Inscription : 06/02/2011
Messages : 611
Site Web

[5.1.1] nuage de tags.

Voila ce matin j'ai testé tout les code existant pour pouvoir faire un nuage de tag tout en respectant les mises en forme et la validité Xhtml.

Merci à PPmarcel car tout vient de lui.

Il faudra édité votre fichier: core/lib/class.plx.show.php


Nous allons ajouter ce code à la fin du fichier (avant les éléments " } ?>") :

/** 
     * Méthode qui affiche un nuage de tags.
     * (inspiré de http://www.bytemycode.com/snippets/snippet/415/ )
     * @param   max     nombre maxi de tags à afficher
     * @author  PPmarcel
     **/ 
     public function tagCloud($max) {

        $time = @date('YmdHi');
        $array=array();
        # On verifie qu'il y a des tags
        if($this->plxMotor->aTags) {
            # On liste les tags sans créer de doublon
            foreach($this->plxMotor->aTags as $tag) {
                if($tag['date']<=$time AND $tag['active']) {
                    if($tags = array_map('trim', explode(',', $tag['tags']))) {
                        foreach($tags as $tag) {
                            if($tag!='') {
                                if(!isset($array[$tag]))
                                    $array[$tag]=1;
                                else
                                    $array[$tag]++;
                            }   
                        }   
                    }   
                }   
            }   
        }   
        uksort($array, create_function('$a, $b', 'return strcasecmp($a,$b);'));
        if(intval($max)>0) $array=array_slice($array, 0, $max);
    
        $font_max_size = 32; 
        $font_min_size = 12; 
        $tags_max_qty = max(array_values($array));
        $tags_min_qty = min(array_values($array));  

        $tags_spread = $tags_max_qty - $tags_min_qty;
        if ($tags_spread == 0) { // Evitons la division par 0
        $tags_spread = 1;
        }   

        // Parametrage de l'incrementation
        $tags_step = ($font_max_size - $font_min_size) / ($tags_spread);

        foreach($array as $tagname => $nbtags) {

            $tags_font_size = round($font_min_size + (($nbtags - $tags_min_qty) * $tags_step));
            $t = plxUtils::title2url($tagname);
            $tag_url = $this->plxMotor->urlRewrite('?tag/'.$t);
            $tag_status =  $this->plxMotor->cible==$t?'active':'noactive';
            $tag_name = plxUtils::strCheck($tagname);
            $nb_art = $nbtags;
            echo "<a class=\"$tag_status\" href=\"$tag_url\" style=\"font-size:${tags_font_size}px\" title=\"$nb_art articles avec le tag $tag_name\"> $tag_name </a>;";
        }
    }

Lister tous les tags en page statique

Dans votre panneau d'administration, créez une nouvelle page statique ayant ces propriétés:

alltags_static.png


Glissez ces 2 lignes dans la page statique obtenu en appuyant sur éditer puis voir  pour verifié que les tags s'affichent correctement :

<?php global $plxShow;
$plxShow->tagCloud($max='300'); ?>

Puis dans votre sidebar (ou le footer cela dépendra de vous et de votre CSS)

     <p><?php $plxShow->tagCloud($max='45'); ?></p>
	 <p><a href="VOTRE URL/?static7/alltags" title="Tous les tags">[ Tous les tags ]</a></p>

Je rappelle que ce code vient de PPmarcel a cette adresse: http://forum.pluxml.org/viewtopic.php?id=1822
juste rendu valide au normes W3C Xhtml strict 1.1

Merci PP wink;)
Solution d'attente du Tagcloud officiel ^^(message subliminal pour Stéphane big_smile)


Mon site web : Mon blog tout simplement avec sa version de pluXml : version dev Github
Un soucis, une angoisse, une question ? le Wiki est là pour tous ici, pour le reste, on est là pour ça :-)
Suivre PluXml sur les réseaux sociaux : Google+ Twitter

Hors ligne

#2 09/07/2011 08:37:58

bankai
Pluxml Forever :)
Lieu : Saint-Pierre-la-cour
Inscription : 06/02/2011
Messages : 611
Site Web

Re : [5.1.1] nuage de tags.

J'ai essayer d'enlever le caractère de séparation des tags le ((  ; )) mais cela ne marche pas.
une idée ?


Mon site web : Mon blog tout simplement avec sa version de pluXml : version dev Github
Un soucis, une angoisse, une question ? le Wiki est là pour tous ici, pour le reste, on est là pour ça :-)
Suivre PluXml sur les réseaux sociaux : Google+ Twitter

Hors ligne

#3 12/07/2011 17:30:56

bg62
Membre
Inscription : 18/05/2007
Messages : 1 781
Site Web

Re : [5.1.1] nuage de tags.

bankai a écrit :

J'ai essayer d'enlever le caractère de séparation des tags le ((  ; )) mais cela ne marche pas.
une idée ?

qu'est-ce qui ne 'marche' pas, je viens de placer ta solution ici :
http://refok.free.fr/
tu peux tester si tu veux, ça fonctionne wink
et j'attendais bien après car un peu plus sympa que la liste 'verticale' qui prend un peu trop de place wink


le 'www' est fait pour communiquer et échanger, non ?
fonds d'écran   | référencement efficace | Portfolio | Fonds d'écran automobile | outils SEO | échange de liens en dur

Hors ligne

#4 12/07/2011 17:50:00

bankai
Pluxml Forever :)
Lieu : Saint-Pierre-la-cour
Inscription : 06/02/2011
Messages : 611
Site Web

Re : [5.1.1] nuage de tags.

Tout fonctionne, je veux juste enlever le caractère de séparation ";" et mettre un espace à la place wink


Mon site web : Mon blog tout simplement avec sa version de pluXml : version dev Github
Un soucis, une angoisse, une question ? le Wiki est là pour tous ici, pour le reste, on est là pour ça :-)
Suivre PluXml sur les réseaux sociaux : Google+ Twitter

Hors ligne

#5 16/08/2011 14:01:53

Bloody
Membre
Lieu : Finistère, Strawberry's field
Inscription : 04/04/2011
Messages : 296
Site Web

Re : [5.1.1] nuage de tags.

Merci Bankaï pour l'astuce. wink

Pour simplifier, j'ai modifié la dernière ligne comme ceci :

<p><a href="<?php $plxShow->racine(); ?>static7/alltags" title="Tous les tags">[ + Tous les tags ]</a></p>

Pour le ";", je pense que c'est un héritage de <?php $plxShow-> artTags( ); ?> ? hmm

Hors ligne

#6 16/08/2011 14:06:06

Bloody
Membre
Lieu : Finistère, Strawberry's field
Inscription : 04/04/2011
Messages : 296
Site Web

Re : [5.1.1] nuage de tags.

Pardon, je suis allé un peu vite. tongue

Bankai, tu as un ";" de trop dans ton echo. Il suffit de le supprimer et tout redevient nickel. smile

Il faut remplacer

echo "<a class=\"$tag_status\" href=\"$tag_url\" style=\"font-size:${tags_font_size}px\" title=\"$nb_art articles avec le tag $tag_name\"> $tag_name </a>;";

par

echo "<a class=\"$tag_status\" href=\"$tag_url\" style=\"font-size:${tags_font_size}px\" title=\"$nb_art articles avec le tag $tag_name\"> $tag_name </a>";

Hors ligne

#7 16/08/2011 21:30:11

bankai
Pluxml Forever :)
Lieu : Saint-Pierre-la-cour
Inscription : 06/02/2011
Messages : 611
Site Web

Re : [5.1.1] nuage de tags.

Kikou Bloody, oui j'avais réussis  enfin à trouver ce fichu ";" ^^
Merci de ton retour l'ami.


Mon site web : Mon blog tout simplement avec sa version de pluXml : version dev Github
Un soucis, une angoisse, une question ? le Wiki est là pour tous ici, pour le reste, on est là pour ça :-)
Suivre PluXml sur les réseaux sociaux : Google+ Twitter

Hors ligne

#8 17/08/2011 14:27:09

Bloody
Membre
Lieu : Finistère, Strawberry's field
Inscription : 04/04/2011
Messages : 296
Site Web

Re : [5.1.1] nuage de tags.

De rien, c'était le minimum que je pouvais faire pour un passionné de drôle de petites bêtes. wink

Hors ligne

#9 17/08/2011 20:22:41

bankai
Pluxml Forever :)
Lieu : Saint-Pierre-la-cour
Inscription : 06/02/2011
Messages : 611
Site Web

Re : [5.1.1] nuage de tags.

Merci ^^


Mon site web : Mon blog tout simplement avec sa version de pluXml : version dev Github
Un soucis, une angoisse, une question ? le Wiki est là pour tous ici, pour le reste, on est là pour ça :-)
Suivre PluXml sur les réseaux sociaux : Google+ Twitter

Hors ligne

#10 21/08/2011 18:25:16

brar2010
Membre
Lieu : AGADIR
Inscription : 21/08/2011
Messages : 132
Site Web

Re : [5.1.1] nuage de tags.

Merci


--------------------
Palestine souffre


Je suis la http://www.yanplus.eb2a.com/

Hors ligne

#11 22/08/2011 16:40:55

chilperik
Membre
Inscription : 23/12/2009
Messages : 53
Site Web

Re : [5.1.1] nuage de tags.

pleinement fonctionnel avec le passage de mon blog en 5.1.2, le nuage de tags marche a merveille smile

Merci bankai pour l'adaptation wink

voila juste un retour positif sur la perso de notre CMS favori big_smile

J'explore encore les nouveautés (surtout les plugins) et est il prévu d'inclure le nuage dans un futur plugin officiel ?


Mon blog sous pluxml : www.chilperik.fr

Hors ligne

#12 22/08/2011 16:45:04

bg62
Membre
Inscription : 18/05/2007
Messages : 1 781
Site Web

Re : [5.1.1] nuage de tags.

ben je ne vous dit pas tous les tags que je vais devoir entrer quand je vais me décider à faire la mise à jour !!!
mais il est vrai que c'est bien utile wink


le 'www' est fait pour communiquer et échanger, non ?
fonds d'écran   | référencement efficace | Portfolio | Fonds d'écran automobile | outils SEO | échange de liens en dur

Hors ligne

#13 22/08/2011 16:45:59

bankai
Pluxml Forever :)
Lieu : Saint-Pierre-la-cour
Inscription : 06/02/2011
Messages : 611
Site Web

Re : [5.1.1] nuage de tags.

De rien, merci à son auteur plutôt, je pense que pour avoir un beau nuage de tag il faut l'intégré au Core de nos PluXml.


Mon site web : Mon blog tout simplement avec sa version de pluXml : version dev Github
Un soucis, une angoisse, une question ? le Wiki est là pour tous ici, pour le reste, on est là pour ça :-)
Suivre PluXml sur les réseaux sociaux : Google+ Twitter

Hors ligne

#14 22/08/2011 16:53:12

chilperik
Membre
Inscription : 23/12/2009
Messages : 53
Site Web

Re : [5.1.1] nuage de tags.

+1 pour l'intégration dans le core ! franchement la vue en liste par défaut .... c'est moche et peu pratique (avis perso). Avec un nuage nos sites respirent la modernité et sont attrayants pour les yeux, sans parler du gain de place !! C'est tout simple mais ca fait beaucoup je trouve smile

edit : et oui un gros +1 pour ppmarcel l'auteur du nuage initial wink

Dernière modification par chilperik (22/08/2011 16:55:50)


Mon blog sous pluxml : www.chilperik.fr

Hors ligne

#15 01/10/2011 16:26:40

alpaph
Membre
Lieu : Est Parisien
Inscription : 19/09/2009
Messages : 34
Site Web

Re : [5.1.1] nuage de tags.

Bonjour,

Après avoir suivi le mode opératoire de Bankai et en intégrant les modifications de Bloody, je suis enfin arrivé à faire ce fameux nuage de mots-clefs. Merci.

Cependant, j'ai deux petits soucis à régler avant la mise en ligne :
1 - l'affichage de la page statique "tous les tags" met à l'écran "; tagCloud($max='300'); ?>". Je n'arrive pas à voir le problème.

2 - le clic sur l'un des tags affiche bien les articles associés. Mais après, lorsque je clique sur Accueil, le "filtre du tag reste actif et je n'arrive pas à retrouver la vraie page d'accueil du site.

Si quelqu'un a une idée ... merci.

A+

Philippe.

Hors ligne

#16 01/10/2011 16:30:57

alpaph
Membre
Lieu : Est Parisien
Inscription : 19/09/2009
Messages : 34
Site Web

Re : [5.1.1] nuage de tags.

Euh, pour le deuxième point, pas la peine. Ayant mis mon site en local, j'avais mal renseigné le parametre racine de parametre.xml.
Mais le problème 1 reste actuel.

Hors ligne

#17 01/10/2011 17:12:57

Clyd
Membre
Lieu : Pas loin de Paris
Inscription : 21/11/2010
Messages : 53
Site Web

Re : [5.1.1] nuage de tags.

Chez moi le nuage de tags fonctionne bien avec la dernière version (5.1.3)

En conséquence il serait superbe de ne pas avoir toujours les mêmes tags dans la sidebar, la fonction devrait prendre les tags de façon aléatoire .

Personnellement j'affiche 20 tags dans la sidebar, mais ces tags sont toujours les mêmes , y a pas moyen de les changer via un tri  (rand).

C'est juste une idée car je n’ai pas suffisamment de connaissances en php pour le faire.

Dans tous les cas je vous remercie pour le travail déjà effectué.

Dernière modification par Clyd (01/10/2011 17:13:20)

Hors ligne

#18 04/11/2011 22:21:50

Jos
Pluxml Staff
Lieu : Région de Grenoble
Inscription : 04/11/2011
Messages : 1 128
Site Web

Re : [5.1.1] nuage de tags.

C'est vrai que un beau nuage de tag serait bien mieux. +1 également.

Hors ligne

#19 23/01/2012 18:39:03

PPmarcel
Membre
Inscription : 21/06/2010
Messages : 249
Site Web

Re : [5.1.1] nuage de tags.

Merci Bankai pour cette mise à jour. wink

Pour ma part j'ai temporairement délaissé mes activités en 2011. J'étais même persuadé que le nuage de tags était désormais intégré à PluXML. ^_^'



bankai a écrit :

Solution d'attente du Tagcloud officiel ^^(message subliminal pour Stéphane big_smile)

Stéphane et les contributeurs du projet ont en tout cas fais un gros effort en intégrant un système de plugin. Ce serait une bonne idée d'évolution de convertir le nuage en plugin, ce qui le rendrait plus accessible à tous les utilisateurs de PluXML.


Je tâcherais de regarder ça de plus près d'ici quelque temps, mais si toi (Bankai) ou quelqu'un autre est motivé (et plus rapide), n'hésitez pas à vous lancer. smile

Dernière modification par PPmarcel (23/01/2012 18:56:34)

Hors ligne

#20 23/01/2012 19:00:18

danielsan
Membre
Lieu : Montpellier
Inscription : 18/07/2011
Messages : 1 274

Re : [5.1.1] nuage de tags.

Hello,
il y a une version légèrement différente sur le site du lapin bleu.
On l'a testé avec les mots-clefs de bankaï.
Le pb est qu'à la vue du nombre de mots-clefs il n'y avait pas assez de récurrences pour les classés en 4-5 groupes.
L'avantage du tient est que la taille des caractères varie de 12 à 24px, donc plus de groupes = plus de variantes.
L'idéal serait d'associer un style plutôt qu'une taille ( modif assez facile à faire d'ailleurs mais pas le temps pour le moment.)
Cordialement,


Que l'inspiration soit avec vous, à jamais !

Hors ligne

#21 15/02/2012 02:29:37

antistress
Membre
Inscription : 28/12/2009
Messages : 354
Site Web

Re : [5.1.1] nuage de tags.

Pour avoir juste le nuage de tags en page statique, il faut seulement suivre les 2 1res étapes données par bankai ?
Soit ajouter le code de bankai à core/lib/class.plx.show.php (avec la dernière ligne modifiée par Bloody http://forum.pluxml.org/viewtopic.php?pid=19888#p19888 ) et créer la page statique avec le code donné par bankai ?
La 3è étape sert à quoi (le code à ajouter "dans votre sidebar (ou le footer cela dépendra de vous et de votre CSS)") ?
J'ai suivi les étapes 1 et 2 mais ça ne marche pas.... cf http://libre-ouvert.toile-libre.org/ind … 11/alltags
Merci d'avance

Hors ligne

#22 31/03/2012 12:04:52

Danjoe
Membre
Inscription : 31/03/2012
Messages : 6

Re : [5.1.1] nuage de tags.

Bonjour,

Tout d'abord merci pour ce cms génial.

J'ai mis en place la page nuage de mots clés qui fonctionne parfaitement sur pluxml 5.1.5.

Je n'ai fait aucune autre modification sauf celles indiquées or depuis j'ai un message d'erreur :

Warning: Cannot modify header information - headers already sent by (output started at /(...)/core/lib/class.plx.show.php:1) in /(...)/index.php on line 67

Je n'ai pas modifié l'index pouvez-vous m'aider à apporter la correction nécessaire ?

Remerciements

Hors ligne

Pied de page des forums

A propos Nous soutenir Contact Twitter Google+
Copyright © 2006-2017 PluXml.org, tous droits réservés