<BOUCLE_documents_article(DOCUMENTS){id_article}{par num titre}{doublons}>
[(#PUCE)][(#TITRE|supprimer_numero)]
</BOUCLE_documents_article>
m'affiche correctement le titre du document, alors que la boucle :
<BOUCLE_documents_article_test(DOCUMENTS){id_article}{par num titre}{doublons}>
[(#PUCE)][(#TITRE|supprimer_numero)] ([(#TYPE_DOCUMENT)])
</BOUCLE_documents_article_test>
me retourne le type du document à la place du titre (le type du document est finalement retourné deux fois). La balise #TYPE_DOCUMENT semble écraser la balise #TITRE.
A+
Olivier « M. Go »
Note : je n'ai bien sûr pas ce problème avec Spip 1.7.2
<BOUCLE_documents_article(DOCUMENTS){id_article}{par num titre}{doublons}>
[(#PUCE)][(#TITRE|supprimer_numero)]
</BOUCLE_documents_article>
m'affiche correctement le titre du document, alors que la boucle :
<BOUCLE_documents_article_test(DOCUMENTS){id_article}{par num
titre}{doublons}>
[(#PUCE)][(#TITRE|supprimer_numero)] ([(#TYPE_DOCUMENT)])
</BOUCLE_documents_article_test>
me retourne le type du document à la place du titre (le type du document
est finalement retourné deux fois). La balise #TYPE_DOCUMENT semble
écraser la balise #TITRE.
C'est possible qu'il y ait un bug à cet endroit ; dans le code CVS ça se
trouverait dans inc-boucles.php3 ligne 78, qui indique :
> titre}{doublons}>
> [(#PUCE)][(#TITRE|supprimer_numero)] ([(#TYPE_DOCUMENT)])
> </BOUCLE_documents_article_test>
>
> me retourne le type du document à la place du titre (le type du document
> est finalement retourné deux fois). La balise #TYPE_DOCUMENT semble
> écraser la balise #TITRE.
C'est bien le cas : en ouvrant la boucle en question dans le tout nouveau
debuggueur, que voit-on :
18. $result = spip_abstract_select(
19. array("0+documents.titre AS num",
20. "documents.titre",
21. "types_documents.titre",
22. "documents.id_document"), # SELECT
Comme tu vois, il y a ensuite confusion entre "documents.titre" (censé
donner #TITRE) et "types_documents.titre" (censé donner #TYPE_DOCUMENT).
Reste à trouver 1) à quoi ça sert
C'est que le #TYPE_DOCUMENT est la valeur du champ 'titre' de la table
spip_types_documents
2) comment résoudre
Méchante question
Pour bien faire il faut passer
"documents.titre"
et "types_documents.titre AS type_document"
J'envoie un patch, avec le risque toutefois de casser d'autres connexions
étranges entre tables... à mettre en observation, donc.
Cela dit, s'il ne reste plus que des bugs de ce niveau de subtilité, c'est
assez rassurant !