[Résolu] Plugin Agenda, effet d'une sélection sur les articles

Bonjour,

Les deux boucles imbriquées suivantes me retournent tous les articles, et pour le seul d’entre eux qui en possède actuellement, tous ses événements :


<BOUCLE_a(ARTICLES)>
  <p>Article #ID_ARTICLE</p>
  <BOUCLE_e(EVENEMENTS){id_article}{evenement_a_venir}{par date_debut}>
    <p>du [(#DATE_DEBUT|nom_jour)] [(#DATE_DEBUT|affdate_heure)] au [(#DATE_FIN|nom_jour)] [(#DATE_FIN|affdate_heure)]</p>
  </BOUCLE_e>
</BOUCLE_a>

Par contre, en ajoutant un critère de sélection de mes articles sur un mot clé,
l’id de l’article qui possède ce mot clé est bien renvoyé.
C’est celui qui possède des événements listés précédemment,
mais ceux-ci ne sont pas renvoyés : rien n’est trouvé après l’id_article.



<BOUCLE_a(ARTICLES){titre_mot=planning}>
  <p>Article #ID_ARTICLE</p>
  <BOUCLE_e(EVENEMENTS){id_article}{evenement_a_venir}{par date_debut}>
    <p>du [(#DATE_DEBUT|nom_jour)] [(#DATE_DEBUT|affdate_heure)] au [(#DATE_FIN|nom_jour)] [(#DATE_FIN|affdate_heure)]</p>
  </BOUCLE_e>
</BOUCLE_a>

Même chose si je sélectionne les articles par {id_rubrique=3} par exemple.

Que faire pour sélectionner les articles ?

Hum, normalement ta boucle devrait fonctionner. Je ne comprend pas pourquoi tu as cela. Que donne le mode debug?

Avec le mode debug, je ne vois rien d’utile. Les deux boucles semblent exécutées normalement.

Par contre, j’ai découvert une anomalie dans les liens entre les données qui expliquent je pense le dysfonctionnement.

Tout ce qui suit est dans l’espace privé (et se confirme dans la base de données) :

L’article 9 est bien associé à l’almanach 1 qui contient des événements importés.
Pour cet article 9, on ne voit aucun événement rattaché.

Les événements (ceux visibles dans la page de l’almanach 1) sont en revanche visibles sur la page de l’article 6. Cet article n’a aucune raison d’être lié à des événements.

Quelque chose a dû casser les références… mais je ne vois pas quoi. Sur cet environnement je n’ai pas modifié de lien entre almanach et article (comme je l’ai fait sur un environnement de test la semaine dernière).

C’est étrange. Je ne vois vraiment pas ce qui aurait pu faire ce decalage.

Salut,

c’est bizarre oui, ça devrait marcher. Peut-être que {titre_mot=planning} est transmis à l’événement ? Essaye avec {articles.titre_mot=planning} dans ta boucle ARTICLES ou {titre_mot=''} dans ta boucle EVENEMENTS pour voir ce que ça donne.

Quel est ton besoin, il y a peut-être une autre façon de faire ?

Tu y as peut-être déjà pensé, mais si tu veux lister les événements d’un article n°X, tu peux ajouter {id_article=X}.

Tu dois également pouvoir faire une jointure entre les tables ARTICLES et EVENEMENTS pour avoir de meilleures performances :

<ul>
<BOUCLE_planning(ARTICLES) {titre_mot=planning} {evenements.statut=publie} {par evenements.date_debut} {evenement_a_venir}>
<li>Titre article : #TITRE / Date événement [(#DATE_DEBUT|nom_jour)] [(#DATE_DEBUT|affdate_heure)] au [(#DATE_FIN|nom_jour)] [(#DATE_FIN|affdate_heure)]
</BOUCLE_planning>
</ul>

A tester.

J’ai corrigé sous SQL, et mon problème est ainsi résolu.
Je crains toutefois qu’il n’y ait un souci potentiel.
Merci pour vos réponses.