Skip to main content Help Control Panel

YACS CMS : Open source !

Community «   Le forum «   Soupçons de bogues «  

Colonne "Record de visites" de ma page d'accueil [Solved]

avatarfootix69 -- on June 15 2007, from Lyon Croix-Rousse
Une question de détail
Bonjour,

Dans la colonne de gauche de ma page d'accueil, je fais apparaître le record de visites des articles les plus consultés.

Il apparaissent effectivement classés de manière décroissante selon le nombre de consultations: de 4 270 lectures pour le premier jusqu'à 767 lectures pour le dernier.

Cependant je m'étonne de ne pas retrouver un article pourtant très consulté (1 787 lecture) dans ce record de visites.

Lien de l'article "oublié"

Si quelqu'un connaît la réponse...

Bonne journée à tous et à toutes

YACS 7.4/skeleton, chez OVH site du SNIASS

Files

Canardo69.zip 16,224 bytes, 99 downloads
edited by GnapZ on June 16 2007 · Zoom

Solution Manager: GnapZ

Solution has been fully integrated
GnapZ
from Caribbean
2970 posts

on June 15 2007


L'article en question ne semble pas apparaître sur la page d'accueil (défilement flash).

Soit il a une option avancée pour ne pas y apparaître (modifier l'article pour vérifier les options), soit il a une date de publication trop ancienne pour être dans les articles récents.

Ces deux cas pourraient avoir un effet sur le classement des clics ? A tester (vérifiez les options et/ou donnez-lui une date de publication plus récente).

Dans le premier cas, cela peut être logique mais dans le second, ce serait plutôt un bug.

PS: Dans le slogan du site, "sanitaire" ne prendrait-il pas un S majuscule ?
Canardo69
avatar
from Lyon Croix-Rousse
55 posts

on June 15 2007


Merci pour cette réponse rapide !

Il y aurait donc une durée au delà de laquelle l'article n'apparaît plus, quelque soit par ailleurs le nombre de consultations...

C'est très certainement l'explication puisque "l'article oublié" en question, qui par ailleurs ne fait pas l'objet de restriction particulière d'affichage sur lapage d'accueil, est daté du 18 décembre et qu'il est par conséquent plus ancien que les articles apparaissant dans le record de visite.

Manifestement il ne s'agit donc pas d'un bug mais plutôt d'un choix.

A mon sens c'est dommage d'introduire un paramètre de durée (laquelle au fait ?) car un article ancien, du fait de sa date de publication, peut rester tout à fait pertinent de par son contenu.

Qu'en pensez-vous ?

Notez bien qu'il ne s'agit pas pour moi d'un quelquonque perfectionisme. Au contraire c'est très concret car je mesure l'effet "boule de neige" sur le nombre de consultations des articles affichés dans cette colonne.

YACS 7.4/skeleton, chez OVH site du SNIASS
GnapZ
from Caribbean
2970 posts

on June 15 2007


Canardo69 : Je ne dis pas qu'il y a un paramètre mais je pense plutôt que cette mesure de clics se base (peut-être à tort) sur la liste des articles récents et non sur la totalité des articles.

Je vais y regarder de plus près ...
Canardo69
avatar
from Lyon Croix-Rousse
55 posts

on June 15 2007


Merci !
GnapZ
from Caribbean
2970 posts

on June 15 2007


La liste est bien effectuée sur la totalité de la table des liens (où chaque article doit y avoir un enregistrement).

Vérifiez que l'article est bien présent dans cette table. Faites éventuellement une maintenance des liens (panneau de contrôle - liens - maintenance) sur les 4 options.

Faites éventuellement une maintenance de la base de donnée aussi.
Canardo69
avatar
from Lyon Croix-Rousse
55 posts

on June 15 2007


" La liste est bien effectuée sur la totalité de la table des liens (où chaque article doit y avoir un enregistrement).

Vérifiez que l'article est bien présent dans cette table. Faites éventuellement une maintenance des liens (panneau de contrôle - liens - maintenance) sur les 4 options.

Faites éventuellement une maintenance de la base de donnée aussi. "


Euh...je ne vois qu'une liste de liens externes, aucun liens relatifs à des pages de mon site dans cette table des liens...

Quoiqu'il en soit, maintenance de la table lien effectuée sur les 4 options, je n'ai toujours pas le résultat escompté: l'article n'apparaît pas...

toutefois je note que la maintenance relative à la 1ère option n'a pas fonctionnée. J'ai obtenu une liste d'erreurs du type :

UPDATE `yacs_links` SET edit_action='link:stamp', edit_date='2007-06-15 00:00:00', WHERE links.link_url = 'http://www.gravatar.com/' 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 'WHERE links.link_url = 'http://www.gravatar.com/'' at line 1
GnapZ
from Caribbean
2970 posts

on June 15 2007


Canardo69 : Oui, je ne sais pas où j'étais encore, c'est bien la table Articles qui, jointe à la table Sections, génère la liste. Il faudrait alors voir la maintenance de ces deux tables dans le panneau de contrôle.

Alors, j'ai trouvé que cela provenait de la dernière date de modification de cet article. En effet, il semble que la liste ne prenne en compte que les articles modifiés depuis les 120 derniers jours (ne me demandez pas pourquoi) !

Ce n'est pas un bug mais une fonctionalité donc nous allons voir s'il y a une raison à cela, sinon nous supprimerons cette condition.

En attendant, vous pouvez commenter (avec // en tête de ligne) les lignes 1232 et 1233 dans articles/articles.php (donnez-nous un retour).

Pour votre erreur SQL, cela peut provenir de votre version de MySql, je vais approfondir aussi ... Quelle version de MySql avez-vous ?
Canardo69
avatar
from Lyon Croix-Rousse
55 posts

inspired from GnapZ on June 16 2007


GnapZ :
Table des articles: maintenance (détection des enregistrements orphelins): fait
MySQL: chez OVH, c'est la version 5
Commenter les lignes 1232 et 1233: je veux bien mais (pardonnez mon ignorance), qu'est-cela va-t-il changer ?


Merci encore pour votre aide.
GnapZ
from Caribbean
2970 posts

inspired from canardo69 on June 16 2007


Canardo69 : Je vous propose de commenter les lignes de ce script pour que vous puissiez profiter de votre fonction dès maintenant. Ces deux lignes sont responsables de votre article manquant.

Celui que je propose est pour la version 7.5alpha23 dans le but de son intégration pour les prochaines versions.
Canardo69
avatar
from Lyon Croix-Rousse
55 posts

on June 16 2007


GnapZ :voici ce que je lis dans le fichier articles.php Y'a rien à la ligne 1232, donc le code extrait ci-dessous commence à la ligne 1233:

// the list of articles
$query "SELECT articles.* FROM ".SQL::table_name('articles')." AS
    articles"
            
." LEFT JOIN ".SQL::table_name('sections')." AS sections"
            
."    ON ((articles.anchor_type LIKE 'section') AND (articles.anchor_id =
    sections.id))"
            
." WHERE (".$where.") AND (".$sections_where.")"
            
." ORDER BY articles.hits DESC, articles.title LIMIT
    "
.$offset.','.$count;

        
$output =& Articles::list_selected(SQL::query($query), $variant);
        return 
$output;
    }



Comme je ne sais pas bien ce que je dois commenter au juste, je vais sagement attendre la prochaine version...

Merci encore
GnapZ
from Caribbean
2970 posts

inspired from canardo69 on June 16 2007


Canardo69 : Il s'agissait de commenter le paragraphe précédent votre citation PHP:
//$dead_line = gmstrftime('%Y-%m-%d %H:%M:%S', time() - 60*60*24*30*4);
//$where .= " AND (articles.edit_date > '".$dead_line."')";

D'après un fichier original articles/articles.php de la 7.4, il s'agit bien des lignes 1232 et 1233.

Voici une version toute prête Assurez-vous que vous êtes bien en 7.4 ! N'allez pas modifier une autre version avec ce fichier joint !

Canardo69.zip
Canardo69
avatar
from Lyon Croix-Rousse
55 posts

on June 16 2007


GnapZ : :[ Je viens de m'apercevoir que je ne suis pas en 7.4 mais bien en 7.3 ...

Je vais d'abord passer en 7.4 (dans quelques jours parce que malheureusement les mises à jour de yacs chez OVH sont un peu laborieuses contrairement à l'installation qui avait été très rapide)

Merci pour le fichier déjà tout cuit Je vous tiens au courant du résultat.

A bientôt
Bernard
avatar
from nearby-an-airport
Associate, 6995 posts

inspired from GnapZ on June 25 2007


GnapZ: la limite, ici fixée à 120 jours, est pour éviter de trop avantager les anciens articles par rapport aux nouveaux. En introduisant un horizon, on permet d'oublier de vieux articles, et de faire de la place à de nouveaux articles qui méritent d'être visibles. Si 120 jours, c'est à dire environ 4 mois, est trop court, on peut changer la constante. Vos suggestions sont les bienvenues...
Canardo69
avatar
from Lyon Croix-Rousse
55 posts

on June 27 2007


Bernard :

S'agissant de mon site, l'article le plus ancien a autant d'importance que le plus récent qui est déjà par ailleurs favorisé par le fait qu'il apparaît systématiquement en page d'accueil.

Par conséquent la limité fixée à 120 jours dans YACS n'est pas pas nécessairement pertinente de mon point de vue.

Maintenant que j'ai connaissance de cette limite, je m'en accomoderais.

Mais peut-être que d'autres yacsiens sont dans mon cas, d'où la suggestion que YACS propose en option d'appliquer ou pas cette limite des 120 jours ...

Je vous laisse naturellement seul juge del'oppportunité et de la faisabilité.

Bonne journée
GnapZ
from Caribbean
2970 posts

inspired from canardo69 on June 27 2007


Canardo69 : Vous souhaiteriez pouvoir modifier cette valeur de 120 jours (jusqu'à 999) via le panneau de contrôle ou une option Activer/Désactiver (je vous vois venir ... vous allez me dire "les deux" )?
Canardo69
avatar
from Lyon Croix-Rousse
55 posts

inspired from GnapZ on June 27 2007


GnapZ :

Meuh non Gnapz , l'option "Désactiver", via le panneau de contrôle, me suffirait amplement.

Dans cette hypothèse çà pourrait donner quelque chose comme çà ?

Option activée= record de visites établi sur la base des articles publiés dans le délai des 120 derniers jours

Option désactivée= record de visites établi sur la base des articles publiés depuis la création du 1er article du site
Bernard
avatar
from nearby-an-airport
Associate, 6995 posts

on June 27 2007


Euh, arrêtez tout, je viens de me rendre compte que dans la 7.6, à la suite d'optimisation des requêtes SQL dans articles/articles.php, la contrainte des 120 jours n'existe plus. Plus du tout même...
Canardo69
avatar
from Lyon Croix-Rousse
55 posts

inspired from Bernard on June 27 2007


Bernard :mais alors Bernard, tu avais donc résolu le problème avant même qu'il ne soit posé ?

Dans ce cas, je pense que vos pouvez considérer ce fil de discussion comme résolu.

Bonsoir
Bernard
avatar
from nearby-an-airport
Associate, 6995 posts

inspired from canardo69 on June 27 2007


Canardo69: bionic

 
Share
Information channels
Recent files