Boucles documents pour lister les images d’un site SPIP

La boucle documents, bien utilisée, permet de retourner diverses listes des images d’un site SPIP, y compris les articles ou rubriques auxquels elles appartiennent.

A partir de SPIP version 1.4

Après la publication de Liste les images des dossiers /IMG/gif, /IMG/jpg et /IMG/png, il m’a été demandé que ce script qui lisait seulement le répertoire IMG d’un site SPIP, retourne également à quel article ou rubrique appartenait une image. Ce qui impliquait d’aller lire la base de données MySql plutôt que le répertoire IMG. Après analyse, j’ai remarqué que la boucle documents de SPIP, bien utilisée, permettait de faire cela. C’est évidemment un peu plus complexe que l’implémentation d’un script « qui fait tout », mais c’est aussi beaucoup plus « Spipien », et c’est donc cette voie que j’ai choisi d’exploiter.

La documentation officielle sur les boucles documents se trouve ici :
http://www.spip.net/fr_article1823.html

Voici cependant quelques points utiles à savoir :

  1. Spip autorise toujours des images incluses dans les articles.
  2. Il autorise des documents joints dans les articles et/ou rubriques, si l’autorisation en est donnée dans l’administration du site (Configuration du site, Contenu du site, Documents joints).
  3. Dans la configuration du site, dans les fonctions avancées, Spip offre une possibilité très intéressante : la « Génération de miniatures des images ». Cette configuration est activée sur le site de démonstration lié à cet article, avec une taille maximale des vignettes fixée à 150 pixels.
    2 précisions :
    -  Si vous n’activez pas cette possibilité, les miniatures affichées seront celles par défaut (format du document) de SPIP.
    -  Les vignettes ne commenceront à être générées qu’à partir de l’activation de cette possibilité.
  4. Le paramètre des boucles documents {mode=document} ou {mode=image} :
    -  {mode=document} retourne tous les documents joints (y compris les images non directement insérées dans un article). Le paramètre supplémentaire {extension==jpg|png|gif} permettra de retourner seulement les documents images.
    -  {mode=image} retourne toutes les images, jointes ou insérées directement dans un article.
    -  On utilisera le critère {doublons} pour éviter dans une boucle d’avoir 2 fois un document, par exemple, une image à la fois jointe et insérée dans un article.

Les boucles proposées dans les squelettes :
-  img-rub-tout : Toutes les images publiées du site.
-  img-rub-tout-prive : Le même, mais avec accès privé (rédacteurs ou administrateurs)
-  img-rub-portfolio : Un exemple de portfolio à partir de document joint à une rubrique, la Génération de miniatures des images ayant été activée avant le téléchargement des images sur le site.

Dans img-rub-tout, une vignette cliquable de l’image est affichée, avec les titre, description, type, taille, poids et le n° de l’article (ou de la rubrique) auquel elle réfère, article par article, rubrique par rubrique. Un lien vers l’article (la rubrique) concerné est également affiché.

Dans img-rub-tout-prive, un lien « Modifier cet article (cette rubrique) » est ajouté. Sur une (très) bonne idée de BoOz de spipcontrib, le code spip d’affichage des images dans les articles (<docXX|left>, <imgZZ|center>, etc.) se trouve en dessous de chaque image, à disposition des rédacteurs. Cela leur permet de récupérer aisément les images affichées pour leurs propres articles.

Le package est ici :
http://support.cassiopea.org/spip/img-rub.zip

La démo (portfolio) est ici :
http://robert.sebille.openbaz.be/spip/-GALLERIE-Portfolio-1-.html

Dernière modification de cette page le 13 novembre 2008

Discussion

4 discussions

  • Helveto

    Bravo et merci.

    Répondre à ce message

  • une adaptation pour la 1.9 est prévue ?

    Répondre à ce message

  • 2

    Cette boucle peut-elle servir à afficher l’ensemble des documents (word, excel, pdf) attachés à n’importe quel article du site spip, l’affichage se faisant par rubrique avec le "label" associé à chaque document ?

    • Oui, dans les boucles documents, il suffit de supprimer extension==jpg|png|gif ou de le remplacer par extension==pfd|rtf ... etc..., suivant le type de documents que tu souhaites montrer.

      Un conseil, pour tes documents de traitement de texte et de Tableur, emploie plutôt des formats ouverts (comme ceux d’OpenOffice, par exemple) que des formats propriétaires (word, excel, etc), si tu veux que tout le monde puisse y avoir accès.

      Robert.

    • Merci pour la vitesse de réponse ! Je vais essayer de passer à la pratique.

    Répondre à ce message

  • zevince

    Merci, contrib bien utile !

    Répondre à ce message

Ajouter un commentaire

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom