Je rencontre le soucis avec SPIP 3.0.22 reproduis sur deux versions du même site (prod et dev). Je n'ai pas eu de réponse sur la liste. J'ignore si ici est le bon endroit pour signaler ce genre de problème, alors merci de votre bienveillance.
Dans la partie privée, l'onglet mes articles de la page articles affiche des information incorrectes, c'est à dire des article qui ne sont pas forcément de l'auteur passé en paramètre.
En explorant avec le mode debug, voila ce que j'ai découvert :
la boucle telle que prévue initialement est :
Elle donne le code suivant :
SELECT articles.id_article, 0 as points, '', articles.titre, articles.statut, articles.id_rubrique, articles.titre AS titre_rang, articles.lang, articles.date, articles.id_rubrique, articles.id_article FROM info_articles AS `articles` INNER JOIN info_evenements AS L2 ON ( L2.id_article = articles.id_article ) WHERE (L2.id_auteur = 3) AND ((articles.statut IN ('prepa','publie','refuse','prepa'))) GROUP BY articles.id_article ORDER BY articles.date DESC, articles.titre
Je ne comprends pas la raison du recours à la table événements. et j'y vois une raison des résultats aberrant de la boucle
Si par contre Je modifie la boucle avec une jointure :
Cela me donne un code plus encourageant :
SELECT articles.id_article, 0 as points, '', articles.titre, articles.statut, articles.id_rubrique, articles.titre AS titre_rang, articles.lang, articles.date, articles.id_rubrique, articles.id_article FROM info_articles AS `articles` INNER JOIN info_auteurs_liens AS L2 ON ( L2.id_objet = articles.id_article AND L2.objet='article') WHERE (L2.id_auteur = 3) AND ((articles.statut IN ('prepa','publie','refuse','prepa'))) GROUP BY articles.id_article ORDER BY articles.date DESC, articles.titre
et surtout le résultat est conforme à mes attentes.
Quelqu'un pourra-t'il éclaircir la raison de ce mystère ?