SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano

251 Plugins, 182 contribs sur SPIP-Zone, 123 visiteurs en ce moment

Accueil du site > Affichage multimédia > Galeries et diaporamas > Divers > Galerie d’image en mosaique aléatoire

Galerie d’image en mosaique aléatoire

5 octobre 2005 – par rpapa – commentaires

2 votes

Obtenir un affichage aléatoire d’image sur une trame imposée (4x4) même si le nombre d’image est inférieur à 16

L’origine de cette contrib est une question posée sur la liste user par Jacques Plard :

je souhaiterais représenter les articles de la rubrique par des images (doc joint de l’article) et construire une mosaïque qui fasse 4 images en largeur et 4 images en hauteur

Je n’ai jamais plus de 16 articles dans une rubrique, par contre il arrive très souvent d’en avoir moins...

Mon souci est de répartir aléatoirement dans cette grille de 16, les x images qui représente les x articles de la rubrique, et d’avoir par conséquent des cases "vide" de façon aléatoire...

La boucle suivante qui utilise les doublons nommés permet d’afficher cette mosaïque.

Quelques commentaires

-  Commencer par extraire les articles à afficher de la rubrique et les stocker dans {doublons A}.

-  {doublons A} contient donc tous les articles de la rubrique , il faut donc, ajouter à doublons A 16 articles que l’on pourra par la suite facilement identifier par exemple :

  • les plus vieux (réalisation d’un tri {par date}),
  • avec un nom particulier (réalisation d’un tri {par nom})

-  Pour la boucle suivante, on choisit les articles les plus vieux,( s’il n’y en a pas 16, il faut en créer suffisamment des fictifs en mettant une date très vielle ). Ces articles pris dans tout le site sont ajoutés dans {doublons A}

-  {doublons A} contient les articles de la rubrique et 16 autres articles.

-  La boucle suivante permet de générer le complément de {doublons A} dans {doublons B}, {doublons B} contient donc la totalité des articles sauf ceux de {doublons A}.

-  il faut maintenant récupérer les 16 articles à afficher, c’est à dire les articles de la rubrique en ajoutant uniquement le complément à 16. Comme nous avons ajouté les 15 articles plus vieux du site, un simple tri {!par date} (lire {par date} {inverse} ), en limitant aux 16 premiers {0,16} permet d’extraire tous les articles de la rubrique plus le complément nécessaire pour arriver à 16. Le résultat est stockés dans {doublons C}.

-  il ne reste plus qu’à trier {par hasard} le contenu de {doublons C} pour obtenir l’affichage désiré.

Alternativement, pour faire un affichage dans une table à 4 colonnes, on pourra utiliser le filtre |alterner qui affiche alternativement chacun de ces paramètres :

-  L’affichage des images (ici des logos) n’est réalisée que si [(#ID_RUBRIQUE|=={#ENV{id_rubrique}}|?{' ',''})#LOGO_ARTICLE] c’est à dire que l’#ID_RUBRIQUE en cours est identique à l’id_rubrique passée dans l’url. avec

  • {!doublons C} permet de sélectionner le contenu de {doublons C} ;
  • {#ENV{id_rubrique}} la balise #ENV permet de récupérer l’id_rubrique passée dans l’Url ;

Vous pouvez vérifier le fonctionnement de la boucle sur le site en vous baladant dans les rubriques (attention, ce site est un site de test et devrait disparaitre dans quelques temps).

Remarque : la <div class="encart-gauche"> est un bloc flottant.

Il doit être possible de simplifier ces boucles en cascades, n’hésitez pas et proposez vous solutions dans le forum, ou le wiki associé à l’article.

Retour en haut de la page

Vos commentaires

  • Le 14 octobre 2005 à 14:21, par delprado 06

    en tant que "newbie" ici et pas certain d’avoir compris le problème posé, j’ose cependant affirmer qu’une telle "charte" ou "composition" - qui sait ? - ne me poserait aucun problème avec Microsoft Publisher
    converti jpeg.. etc.. qui est l’ossature même de mes
    pages en cours de communication et que SPIP ne semble
    pas rejeter. Oui mais allez donc savoir (faire !)Meilleurs souhaits. emilio delprado

    Répondre à ce message

  • Le 6 février 2008 à 16:58, par spipadict

    Excelent merci !!!!
    parcontre c’est pas :

    mais :

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ? (optionnel)

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 formulaire accepte les raccourcis SPIP et le code HTML. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Retour en haut de la page

Ça discute par ici

  • SPIP-Listes

    30 novembre 2006 – 745 commentaires

    SPIP-listes permet la gestion et l’envoi de lettres d’information (newsletters) au moyen d’un courriel au format html ou texte. Il est possible d’envoyer des messages aux abonnés qui se sont formellement inscrits à une ou plusieurs lettres (...)

  • Galerie SPIP + PHP, simple et prête à l’emploi

    20 janvier 2006 – commentaires

    Voici donc le principe, faire une galerie d’image "très classique", comme celle-ci. Je voulais que les liens de navigation ne restent pas actifs quand il n’y avait plus rien à voir, afficher une image dans sa taille normale, et permettre de choisir (...)

  • Menu - portes coulissantes -

    28 février 2005 – commentaires

    Un menu efficace et joli en CSS, c’est possible grâce à la méthode des portes coulissantes. Un vrai cas d’école. Passionnant pour qui souhaite découvrir les CSS tout en enjolivant son SPIP.

  • Plugin Thélia

    26 juin 2007 – 526 commentaires

    Une approche basée sur l’utilisation conjointe des deux logiciels SPIP et Thélia pour la réalisation de sites de publication et de vente en ligne

  • Essayez SPIP 2.1-RC

    19 mars – 12 commentaires

    La version Release Candidate de SPIP est sortie de la forge.