Jointure inutile pour critère "extension"
La boucle suivante
'}{tout}>
produit un MYSQL simple :
SELECT documents.fichier FROM spip_documents AS `documents` WHERE (documents.taille > 0 OR documents.distant='oui') AND (documents.extension IN ('png','jpg','gif')) ORDER BY FIELD(documents.extension,'png','jpg','gif')
Si à la boucle on ajoute une jointure avec un objet :
'}{tout}{objet=article}{id_objet=3}>
une jointure supplémentaire avec la table spip_types_documents apparaît :
SELECT documents.fichier FROM spip_documents AS `documents` INNER JOIN spip_documents_liens AS L1 ON ( L1.id_document = documents.id_document ) WHERE (documents.taille > 0 OR documents.distant='oui') AND (documents.extension IN ('png','jpg','gif')) AND (L1.objet = 'article') AND (L1.id_objet = 3) GROUP BY documents.id_document ORDER BY FIELD(documents.extension,'png','jpg','gif')
Il me semble que cette jointure n'est pas plus utile pour cette 2eme boucle que pour la première et ne devrait pas être ajoutée.