Surveiller les statistiques de son site Dotclear2 avec BBClone
Développement et ergonomie
Par djib le mercredi 11 juillet 2007, 17:47 - Lien permanent
Sous Dotclear il existait un excellent plugin qui permettait de suivre les statistiques de son site. Je cherchais une solution équivalente sous mon blog Dotclear2.
Après avoir testé Google Analytics et PHPMyVisites, je cherchais une solution moins lourde. J'ai décidé d'utiliser BBClone.
Vous pouvez voir un aperçu de ce que cet article vous permettra d'obtenir. (N'attachez pas trop d'importances au statistiques qui sont assez pitoyables étant donné que je viens tout juste de les activer).
- Avant toute chose, téléchargez la dernière version de BBClone. J'ai pris la version UTF-8 pour mon blog.
- Ensuite, décompressez le fichier téléchargé et copiez le dossier
bbclonedans le répertoire d'installation dedotclear. Le répertoirebbclonese trouve donc au même niveau que le fichierindex.phpde votre Dotclear2. - Ouvrez ce fichier
index.phpet ajoutez les lignes :
define("_BBC_PAGE_NAME", $_SERVER['PHP_SELF']);
define("_BBCLONE_DIR", "bbclone/");
define("COUNTER", _BBCLONE_DIR."mark_page.php");
if (is_readable(COUNTER)) include_once(COUNTER);
juste avant
require dirname(FILE).'/inc/public/prepend.php';
Voilà, vous pouvez maintenant accéder à vos statistiques à la même adresse que votre blog en ajoutant bbclone à la fin de l'adresse.
J'espère que ce petit tutoriel vous aura été utile 



Commentaires
Merci pour ce billet, simple, clair et efficace...
Installé en 2 minutes montre en main
Je suis le developpeur de SpongeClear et pour DotClear 2 tu as SpongeClear que je viens de reprogrammer qui est diponible sur mon site ici htttp://disvroian.free.fr
Tiens chez moi il me dit "paquet invalide" lorsque je mets http://disvroian.free.fr/index.php?... dans mon admin...
Merci beaucoup pour cet article très clair.
Malheureusement, cela ne fonctionne pas chez moi.
Lorsque je regarde le dossier var de bbclone, je vois bien les visites tracées. Mais lorsque j'affiche la page de bbclone, aucune donnée ne s'affiche....
Que se passe-t-il ? Tu n'as rien du tout qui s'affiche, ou juste la page de BBClone sans données.
Juste la page de BBClone sans données.
Toutes les stats sont à zéro.
Comprends pas car il y a des entrées dans les différents fichiers CounterX.inc du dossier var de BBClone...
Peut-être un paramètre dans bbclone/conf/... Essaie par exemple de mettre $BBC_DEBUG à 1...
Merci beaucoup, le problème venait du fait que le fichier var/.htalock était en lecture seule...
Super, je suis content que tu aies trouvé !
Trop fort !
Je suis accroc à BBCLone pour les détails offerts, et là je te dis un super grand merci pour avoir cherché et trouvé comment l'utiliser sous DC2
Merci bcp pour cet article. Je vais essayer de mettre en pratique ces bons conseils.
Je vous en prie !
Une petite question, des fois que tu connaisses la réponse :
Pourquoi si je lis un billet en particulier dans les stats je n'ai que la page index.php qui apparait comme page visitée alors que toi parfois dans les tiennes c'est bien le lien du billet qui est identifié ?
J'ai beau chercher, je ne vois pas ce que je pourrais modifier
Bonjour Guillaume.
Il me semble que c'est juste la directive :
define("_BBC_PAGE_NAME", $_SERVER['PHP_SELF']);qui fait ça.
Merci pour la réponse.
La ligne est bien présente, je vais faire des tests pour vérifier ce que cette variable me renvoie.
M'enfin, c'est pas bien grave, l'adaptation fonctionne parfaitement et ça c'est bien !
Ok. Tiens moi au courant... surtout si tu trouves une autre solution.
Ok. Tiens moi au courant... surtout si tu trouves une autre solution.
Bon, ça ne semble me renvoyer que index.php comme résultat...
Si je trouve un truc je passerais donner des news, mais vu mon niveau, c'est pas gagné !
Guillaume, essaie avec :
define("_BBC_PAGE_NAME", $_SERVER['QUERY_STRING']);Ou alors
REQUEST_URIà la place deQUERY_STRING.Yes !!!
Bon, j'ai un peu adapté car du coup, quand il n'y a pas de query_string, ça n'indiquait pas pour autant que c'était l'index.php qui était visitée (logique, mais c'est plus clean d'avoir index.php d'écrit dans les stats plutôt que rien).
Donc j'ai juste rajouté une condition, si il n'y a pas de QUERY_STRING, utiliser la valeur de PHP_SELF.
Tout est parfait.
Encore un très grand merci pour ton implication.
Mais de rien ! Merci à toi de revenir même après avoir trouvé la solution.
J'en déduis que tu as écris un truc du genre :
if(isset($_SERVER['QUERY_STRING']) && $_SERVER['QUERY_STRING'] !== "") { define("_BBC_PAGE_NAME", $_SERVER['QUERY_STRING']); } else { define("_BBC_PAGE_NAME", $_SERVER['PHP_SELF']); }Moi Perso j'ai écrit sa : je prefere empty a isset
if (empty($_SERVER['QUERY_STRING'])) define("_BBC_PAGE_NAME", $_SERVER['PHP_SELF']); else define("_BBC_PAGE_NAME", $_SERVER['QUERY_STRING']);Ok. Merci.
J'avais effectivement utilisé un isset, que je préfère pour une obscure habitude inexplicable au empty
Et pour ce qui est de revenir même après avoir trouvé ma réponse, c'est la moindre des politesses vu ce que j'ai trouvé sur ton blog

C'est comme ça que les choses avances non ?
Moi aussi je préfère le isset Guillaume. Ça évite des warnings assez moches en fonction des niveaux d'erreur.
Sinon c'est vrai que c'est comme ça que les choses avancent. Merci, j'ai fait la même chose pour mon bbclone
Salut =)
Est-ce que la manip' fonctionne avec Free (il y avait déjà des problèmes avec BBclone pour DC1, alors...)
Merci
Bonjour,
Je ne suis pas hébergé chez free donc je ne sais pas trop...
hello,
à toutes fins utiles, pour Free on trouve un hack ici :
http://linuxfr.org/forums/21/14262....
http://forum.bbclone.de/index.php/m...
(il y a 2 fichiers à remplacer dans bbclone)
je viens d'installer et ça semble fonctionner, à première vue.
au passage, merci Djib pour l'explication limpide !
Ah, sympa le petit "hack". Très utile pour les utilisateurs de Free. Merci Ermo.
Bonjour,
Au juste existe t'il une version de spongeclear en Français.
Rien a dire Bbclone c'est mieux.
Bonjour, je ne sais pas mais je ne pense pas.
Hello,
J'ai copié le dossier a la racine de dotclear (version 2 rc) mais dans l'index.php je n'ai pas la ligne :
require dirname(FILE).'/inc/public/prepend.php';
ou doisje copier le code?
mon fichier est comme ca :
<?php
if (isset($_SERVER['DC_BLOG_ID'])) {
define('DC_BLOG_ID',$_SERVER['DC_BLOG_ID']);
} if (isset($_SERVER['REDIRECT_DC_BLOG_ID'])) {
define('DC_BLOG_ID',$_SERVER['REDIRECT_DC_BLOG_ID']);
}else {
# Define your blog here
define('DC_BLOG_ID','default');
}
require dirname(FILE).'/inc/public/prepend.php';
?>
Et l'avant dernière ligne de ton fichier ?
Merci djib pour ton aide.

Enfin je retrouve se bon vieu bbclone.
Il ne me reste plus qu'a réglé le problème des visites et tout sera parfais
Le problème des visites ?
purée merci la honte
avait pas vu , la fatigue sans doute
Pas de souci Sebi.
Salut, j'ai tout bien installé mais quand je vais à l'URL j'ai l'erreur 403? T'as une idée? Serait-ce lié au fait que je suis sur ouvaton?
Bon je vais encore passer pour la buse de service...
merci d'avance.
Si tu as une erreur 403 c'est a priori un problème de droits. Tu ne dois pas avoir accès aux fichiers que tu as déposé sur ton serveur.
salut ton post est bien
mais quand on se rend sur notre http://monsite/dotclear/bbclone
dans les stats il y a toujours marqué que le visiteur a visité seulement la page index.php.
comment savoir si il a visité tel ou tel catégorie ou meme tel billets ?
Regarde vers le commentaire 22. Si j'ai bien compris c'est ce qu'il te manque pour pouvoir savoir sur quelle page vont les visiteurs.
Merci djib pour ce tuto et merci Adrien (blocusius) pour ton astusce.
Je peux peut-être donner une astuce aussi :
Si vous le voulez vous pouvez mettre ce code (<script type='text/javascript' src='http://www.adresse-ip.net/java-flash6.php'></script>) qui affichera aux visiteurs leur adresse ip externe, l'os qu'ils utilisent, le navigateur qu'ils utilisent ainsi que la résolution de leur écran.
Mois je l'ai mis dans le _footer.html mais vous pouvez le mettre n'importe où sur votre site.
@ +
Merci pour l'information Yugo.