Avertissement
Le passage en SPIP v.3 est en cours merci de me signaler les bugs que vous trouverez.
Installation
Le plugin s’installe comme tout autre plugin, téléchargez le fichier ZIP et placer son contenu dans votre répertoire « plugins/ ».
Il va installer un nouveau menu « Téléchargements » pour permettre de suivre les statistique de téléchargement dans le menu statistique, si celles-ci sont activées, ou dans le menu édition dans le cas contraire.
En SPIP 3, le plugin ajoute un onglet sur la page de suivi des statistique (il est donc nécessaire d’activer les statistiques du site).
Pour configurer le plugin, vous devez vous rendre sur la page des téléchargements et cliquer sur l’icône de configuration dans le bloc de raccourcis.
- Vous pouvez configurer le délai entre deux clics (en seconde). Cela évite qu’un même utilisateur cliquant sur le lien pendant ce délai ne soit compté plusieurs fois. Une valeur négative correspond à un temps infini et ne va compter qu’un seul téléchargement par adresse IP.
- Vous pouvez sécuriser les URLs des liens de téléchargement. Comme ceux-ci sont de la forme :
MON_SITE/spip.php?action=telecharger&arg=35&type=image.jpeg
, il est possible à un utilisateur peu délicat de chercher à charger des document en modifiant l’identifiant du document passé dans l’URL. La sécurisation ajout une clé dépendant du document et de l’utilisateur pour éviter cela.
Principe
Le principe du plugin est de permettre de suivre les téléchargements de certains documents (une notice, un programme ou un document particulier...). Il faut pour cela utiliser le raccourci ou l’url fourni par le plugin.
Utilisation
Le plugin déclare :
- un raccourcis <docxx|compteur>
qui s’utilise dans les articles comme le raccourci <docxx>
et qui va compter les téléchargements.
- une balise #URL_DOC_COMPTEUR
que vous pouvez utiliser dans vos squelettes qui renvoie un lien vers le document et qui comptera les clics faits sur ce lien.
- une balise #COMPTEUR_TELECHARGEMENT
qui permet de connaitre le nombre de téléchargements dans une boucle document.
<BOUCLE_doc(DOCUMENTS)>
Le document #ID_DOCUMENT a été téléchargé #COMPTEUR_TELECHARGEMENT fois<br/>
</BOUCLE_doc>
Dans l’espace privé
Le plugin utilise le module de statistique de SPIP pour afficher les statistiques de téléchargement. Vous y accédez depuis le menu Statistique, si celles-ci sont actives ou le menu Édition dans le cas contraire.
En SPIP 3, les statistiques sont accessibles dans le menu Statistiques, onglet Téléchargements.
Calcul de statistique
Le plugin installe une table DOC_COMPTEURS
qui stocke les téléchargements journaliers de document.
id_document | date | telechargement |
On peut l’utiliser afin de calculer des statistiques sur les téléchargements, en effet, la balise #TELECHARGEMENT
va faire la somme sur la période donnée.
Ainsi, la boucle suivante donne le nombre de téléchargements par document pour 2011.
<BOUCLE_stat(DOC_COMPTEURS){date >= 2011-01-01}{date < 2012-01-01}>
#ID_DOCUMENT : #TELECHARGEMENT<br />
</BOUCLE_stat>
et pour le top10 des téléchargements de la semaine en cours (cela peut être utile) :
[(#SET{date,[(#EVAL{ date("Y-m-d",strtotime("now")-7*24*3600); })]})]
<BOUCLE_stat(DOC_COMPTEURS){date>#GET{date}}{!par telechargement}{0,10}>
<BOUCLE_doc(DOCUMENTS){id_document}>
[(#TITRE|sinon{#ID_DOCUMENT})]
</BOUCLE_doc>
: #TELECHARGEMENT<br/>
</BOUCLE_stat>
Le critère {plat}
supprime ce comportement et permet d’accéder aux téléchargements au jour le jour.
Bonus
En bonus, le plugin propose un gros bouton de téléchargement au travers du modèle doc_bouton
.
Il prend les paramètres compteur
si on veut compter les téléchargements et un paramètre d’alignement (left, center, right). Le paramètre couleur
permet de changer la couleur du bouton (par défaut, en orange). Il peut prendre les valeurs orange, mauve ou bleu.
<docXX|bouton|center|couleur=orange|compteur=1>
En fait, le paramètre couleur
déclare le bouton dans une classe .doc_bouton_couleur
. Vous pouvez donc ajouter des boutons en déclarant la classe correspondante dans votre css (voir les exemples dans le css du plugin et le dossier /img).
Discussions par date d’activité
53 discussions
Bonjour, je viens de me rendre compte que pour que compteur marche, il faut absolument utiliser et non pas, comme j’essayais de la faire . Autrement dit, les plugins analyclicks et medias ne peuvent pas être utilisés ensemble. Quelqu’un a-t-il une idée pour faire comprendre à analyclick de compter les téléchargements des docs qui sont insérés via ? Merci d’avance et bonne journée.
Bonjour,
Le plugin utilise son propre système de modèle sans écraser celui de SPIP. Ceci permet de choisir de ne compter les téléchargements que pour certains documents bien ciblés.
Rien ne vous empêche cependant de créer vos propres modèles en utilisant #URL_DOC_COMPTEUR plutôt que #URL_DOCUMENT dans la définition du lien (recopiez les modèles dans le dossier /modeles de votre squelette pour faire la modification sans impacter le plugin médias).
Je ne connait pas bien le mécanisme du plugin médias, mais il est peut être possible également d’utiliser le mécanisme d’aide à l’insertion de modèle pour renvoyer sur l’adresse du compteur du type :
MON_SITE/spip.php?action=telecharger&arg=35&type=image.jpeg
PS : vous pouvez également poser la question au plugin médias pour savoir s’ils peuvent se brancher sur l’url de comptage (#URL_DOC_COMPTEUR) lorsque le plugin analyclick est activé.
@+
Merci d’avoir pris le temps de me répondre. Comme je ne suis pas sûr d’avoir compris, je me permets de vous proposer ce que j’ai l’intention de modifier. Dupliquer le modèle « media_vignette.html », par exemple, le copier dans mon dossier de mes modèles, et changer la ligne
[(#SETvignette,#LOGO_DOCUMENTvignette|sinon#URL_DOCUMENT| media_generer_vignette#EXTENSION|sinon#LOGO_DOCUMENTicone)]
par
[(#SETvignette,#LOGO_DOCUMENTvignette|sinon#URL_DOCCOMPTEUR| media_generer_vignette#EXTENSION|sinon#LOGO_DOCUMENTicone)]
Est-ce correct ?
Par ailleurs, je vais aussi poser la question au forum du plugin « media », comme vous le suggérez.
Oui, c’est cela (j’ai du mal à voir le code dans votre post, il faut l’encadrer avec une balise <code></code>). #URL_DOC_COMPTEUR marche comme #URL_DOCUMENT sauf qu’elle en profite pour incrémenter un compteur avant de renvoyer sur le document lui même...
@+
Répondre à ce message
Bonjour et merci pour cette version en spip3.
Tout fonctionne normalement.
Superbe travail et merci encore.
J’aurai juste une petite question au sujet des liens des documents générés.
Il sont maintenant renommé par exemple avec une extension
http://www.edition999.info/spip.php?action=telecharger&arg=3266&hash=f3b6237cc6097fa272afd64a6ddec3abaaac7655
Et cela me pose un problème pour le sitemap et pour le référencement google, car il change à chaque fois et google me les met en erreur.
Je pense que j’ai dû me tromper sur des reports et je n’arrive pas à changer.
Merci de votre réponse et à bientôt
Mon site : Edition999
Jean-Michel.
Bonjour,
Le plugin utilise un formulaire sécurisé pour l’envoie du document : il calcule une clé (hash) propre au document et à la session pour éviter un accès direct (en changeant le numéro du document).
L’avantage est qu’on contrôle mieux l’accès aux documents (si on n’autorise pas l’accès à tous), l’inconvénient est que l’url change à chaque fois...
On pourrait être moins restrictif...
Cela se passe dans :
- action/telecharger.php : il suffit de commenter les lignes 20-21 qui contrôle la clé pour que les liens Google fonctionne (en ignorant la clé).
- balise/url_doc_compteur.php : il faut changer le moyen de calculer le lien en mettant :
array('url'=>generer_url_action('telecharger',"arg=$id_document",true))
à la place de :
array('url'=>$securiser_action("telecharger",$id_document))
Je peux voir à introduire une option de ce type.
@+
Bonjour,
Merci beaucoup pour votre réponse.
C’est exactement cela.
C’est comme vous voulez ou pouvez suivant le temps que vous pouvez y consacrer.
L’intégrer dans le plugin serait bien sûr plus simple pour tous les utilisateurs et aurait l’avantage de ne pas se perdre dans les méandres d’internet je jour où un utilisateur aura besoin de ce genre de correctif.
Merci encore et je testerai sans problème le correctif si vous le mettez en ligne.
Jean-Michel
Répondre à ce message
Bonjour
Je viens de télécharger le plugin, et j’ai le message suivant :
Fatal error : Call to undefined function json_encode() in /mnt/112/sdb/9/a/countrymilly/plugins/auto/analyclick/exec/statistiques_anaclic_v3.php on line 165
La ligne en question :
echo recuperer_fond (’fonds/statistiques_anaclic_v3’, array(’id_document’=>$id_document, ’duree’=>$duree, ’duree_mois’=>$duree_mois, ’stat_jour’ => json_encode($statj), ’stat_mois’ => json_encode($statm) )) ;
Que faire ?
Cordialement
Patrick
Bonjour,
La fonction json_encode est dans php >= 5.2.
Il y a un contournement dans SPIP : essayez d’ajouter la ligne :
include_spip (« inc/json ») ;
avant la ligne incriminée...
Cordialement,
Il faut lire la ligne (sans correction typo) :
include_spip ("inc/json");
Merci beaucoup, ça fonctionne !!!
Cordialement
Patrick
Répondre à ce message
Bonjour,
J’aimerai faire évoluer ce plugin en ajoutant id_auteur aux autres enregistrement dans la base :
id_document
date
telechargement
Cela vous parait-il intéressant et logique ?
Merci.
Bonjour,
Le téléchargement correspond au nombre de téléchargements pour un document donnée un jour donné, tout auteur confondu. Il n’est donc pas possible d’ajouter un id_auteur.
On ne cherche pas à savoir qui télécharge quoi (on peut d’ailleurs télécharger un document sans être enregistré), mais quel document et combien de fois il est téléchargé.
Il faudrait reprendre le plugin pour pister qui charge quoi (si c’est ce que vous voulez).
@+
Merci pour votre réponse.
En effet, ma démarche s’inscrivait plutot au sein d’un site complètement restreint dans le cas où chaque auteur aurais pu retrouver les documents qu’il a précédemment téléchargés.
Je vais « creuser » le plugin pour voir si je peux m’en inspirer et en proposer pouquoi pas un autre plus adapté à ce cas.
Merci.
Répondre à ce message
Bonjour,
Il n’y a toujours pas de version prévue pour spip 3.0 ?
Quelqu’un connaît il un autre moyen de compter le nombre de téléchargements d’un Pdf d’un article ?
Merci.
Bonjour,
Un portage pour SPIP v3 est en cours si vous voulez toujours tester...
@+
Répondre à ce message
Bonjour !
Qu’en est-il d’une version spip3 de ce plugin ?
Cordialement
Amaury
Bonjour,
Pas de portage prévu pour l’instant.
@+
dommage :.-(
Bonjour
Je vais regarde ça car il doit pas faloir grand chose et j’en ai besoin sur un site.
Je refond le plugin pour spip 3 afin de ne pas que compter des téléchargement mais tous ce qui est « clic » de liens.
A bientôt pour d’autre infos sur le projet
Merci pour la contrib. et bon courage !
@+
Si tu a un peu de temps, j’ai des bloquage car je pige pas comment le plugin fonctionne encore
Répondre à ce message
Bonjour,
J’utilise Accès restreint et la protection des documents.
Du coup, les deux ne sont pas compatibles -> une fois les documents protégés, #URL_DOC_COMPTEUR ne génère pas l’url du document comme dans inc/document.php :
En bidouillant la fonction generer_url_doc_compteur (en la remplaçant de la manière suivante), j’ai de nouveau accès aux documents, mais le compteur ne marche plus ...
Y aurait-il une solution ?
Merci d’avance.
Bonsoir,
Effectivement, il y a une incompatibilité avec le plugin accès restreint...
Il faut utiliser generer_url_document_dist() dans action_telecharger() : ce sera la fonction du plugin qui sera appelée (lorsqu’il est actif) et qui fera la redirection finale vers le fichier protégé.
Normalement, cela devrait marcher avec la dernière version...
@+
Pour ma part, j’ai eu ce problème avec la nouvelle version d’analyclick, je suis repassé à la version 52762 et je n’ai plus de problème
Quel genre de problème ?
Quelle version de SPIP et avec quels plugins ?
merci ;-)
Le problème était identique à celui de Vero. URL mal générée... J’ai rétrogradé à la version 52762 et ça fonctionne. J’utilise les plugins spip bonux, cfg, agenda 2.0, mediatheque, accès restreint, spip-liste, extra2,...
Et spip 2.1.12 [18732]
Faut vraiment noter tous les plugins ?
;-)
Je reviens à nouveau pour faire part du message d’erreur qui apparaît lorsque je clique sur le lien d’un document qui n’est pas dans le portfolio.
Fatal error : Call to undefined function generer_url_document() in /var/www/vhosts/.../httpdocs/plugins/auto/analyclick/action/telecharger.php on line 43
La version installée du plugin est 58848... je suis à nouveau repassé à 52762
Spip 2.1.13 [19292]
Plugins installés : Accès restreint, médiathèque,...
Bonjour,
Je n’arrive pas à reproduire le problème chez moi (SPIP 2.1.13 + accès restreint + médiathèque).
Tout se passe normalement dans le portfolio ou pas...
Normalement, si elle n’est pas surchargée par un plugin, la fonction generer_url_document() se trouve dans le fichier prive/urls/standard.php de SPIP qui est inclus juste avant, à la ligne 42.
Pouvez-vous vérifier que dans vos plugins il ne traine pas un fichier standard.php qui modifierait ce comportement ?
@+
Le seul fichier standard.php qui se trouve sur le serveur est logé dans ecrire/url/
Je ne vois donc pas où pourrait se situer le problème ?? Mais la version antérieure fonctionne bien à priori.
Bonjour,
A priori, je n’ai plus le problème avec la version : 0.1.0 [58884] sur un spip 2.1.12 [18732]
Mais la protection des documents, via Accès restreint Version : 3.3.1 [58021], n’est pas effective.
L’URL des documents, même protégés est : /spip.php ?action=telecharger&arg=id_document
Bonjour,
@Eric : il y a peut-être un problème de cache (?)
@Vero : l’URL reste la même mais normalement on n’a plus accès au document protégé si on n’a pas les droits... puisque le plugin demande à accès restreint de recalculer l’url (avec une clé qui dépend de la session).
@+
Bien joué Jean-Marc !
La solution : se déconnecter et se reconnecter...
En effet, il ne suffit pas de vider le cache ni d’effacer le dossier tmp/ mais encore de se délogger...
La mise-à-jour fonctionne bien ! Impeccable !
Merci pour le temps passé à fignoler ce plugin !
Avec le plugin mediatheque... cela me permet d’avoir un aperçu direct sur les fichiers « téléchargés ».
Voir ici
Eric
Répondre à ce message
Bonjour,
J’ai une erreure lors de du recalcule de la page après installation du plugin.
« Erreur SQL 1064
You have an error in your SQL syntax ; check the manual that corresponds to your MySQL server version for the right syntax to use near ’’ at line 3
SELECT SUM(telechargement) AS c FROM spip_doc_compteurs WHERE id_document= »
Version de spip 2.1.12 [18732]
est-il compatible avec cette version ?
Bonjour,
Normalement, cela doit marcher avec la 2.1.x. Vérifiez que vous avez bien vidé le cache, sinon, désactiver et réctivez le plugin (sans le désinstaller).
@+
C’était un bug .....
merci
Répondre à ce message
Le problème est que dans le plugin sarka ton astuce ne passe pas, enfin en tout cas pas sur mon site. Quelqu’un pourrait il m’aider ?
Pouvez-vous préciser ?
Désolé de ne pas avoir répondu plus tôt, j’ai réussi à régler le soucis, visiblement une incompatibilité entre deux plugins (je l’ai ai tous désinstallés puis réinstallés un à un, mais vu le nombre dont je disposais, impossible de dire précisément lequel posait problème...)
Merci en tout cas :) !
Répondre à ce message
Bonjour et merci pour ce chouette plugin :-)
J’ai besoin d’un petit coup de pouce : je n’arrive pas à reproduire en partie publique, le top des documents les + téléchargés, visible dans les stats privées.
En effet, on ne peut malheureusement pas classer ses résultats avec le critère
{par compteur_telechargement}
.Une piste ?
Bon, je poursuis mes investigations... pour établir un Top 3 des documents les plus téléchargés depuis le début, faut-il s’appuyer sur les variables #SET #GET et #ARRAY ? Ou y’a plus simple ?
Merci pour vos suggestions :-)
Bonjour,
Une boucle sur les compteurs de documents devrait marcher :
et pour la semaine en cours (cela peut être utile) :
@+
jmv
Merci pour votre réponse :-)
Cependant la boucle proposée n’a pas le comportement attendu :
le classement généré semble trier les documents par ordre décroissant de téléchargement maximal journalier et non par ordre décroissant de téléchargement total (depuis le début)...
Que faire ?
Bonjour,
Effectivement, le classement sur fait sur le compteur journalier...
Je vais voir ce que je peut faire...
@+
Bonjour,
J’ai modifié le critère ’par’ dans la boucle téléchargement pour qu’il pointe sur le compteur global et non le compteur journalier.
Dites-moi si la nouvelle version marche mieux ;-) et désolé pour le bug :(
@+
Bonsoir,
Ne vous excusez pas pour votre travail que vous mettez en partage !
La modification semble tout à fait porter ses fruits : mon top téléchargement marche au poil !
Bravo, et encore un grand merci :-)
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
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.
Suivre les commentaires : |