A propos de l'auteur

  • Stéphane

    Entré chez Les Corsaires avec Pierre en 1999, Stéphane partage sa vie entre l’association et une école sup d’Art à Bruxelles (autant dire qu’il ne dort pas beaucoup). “FormaTueur” et graphiste/développeur respecté, on l’appelle le Gourou, ce qui le rend particulièrement maussade. Reste que tout le monde s’accorde pour penser que si Stéphane avait été Dalaï lama en ‘59, les Chinois auraient renoncé à envahir le Tibet.

Pièces jointes

  • Les fichiers complets

    A placer dans le dossier "pages-custom", à créer s’il n’existe pas à la racine de votre site spip.

    Zip, 3.1 ko

Autres articles dans cette rubrique

Accueil du site / Magusine / Outils pour développeurs / Personnaliser le plugin / Exemple : un diaporama en page sommaire
Voici un exemple concret de création d’un diaporama basé sur jquery (la bibliothèque javascript très connue, utilisée par spip)

5 novembre : update du fichier qui comportait une erreur dans le code. Réparée maintenant.

Nous allons pour cet exemple procéder en trois temps :
- créer un bloc personnalisé
- le rendre disponible dans la page gabarit grâce au xml
- l’activer dans l’administration de magusine

0) Définissons la demande

Nous voulons pour cet exemple disposer d’un diaporama dans la page sommaire. Pour des raisons de facilité, nous voulons que les images de ce diaporama proviennent d’un article spip, auquel nous voulons pouvoir ajouter autant d’images que nécéssaire. Comme ça n’importe quel administrateur peut modifier ces images sans le recours au ftp. Les images doivent pouvoir se mettre à la taille du corps ou des contextes selon les cas.

1) Créer le bloc

Voici le code du bloc


<!-- on recupere l'article dont l'id est fourni par la page gabarit de magusine grace à la variable #env{parametre} -->
<BOUCLE_getart(ARTICLES){id_article=#ENV{parametre}}>
<!-- ici on definit la largeur en fonction de l'endroit ou est le bloc : le corps ou les contextes -->
[(#ENV{conteneur}|=={1}|?{' ',''})#SET{largeur,#LARGEUR_CONTEXTE1}]
[(#ENV{conteneur}|=={2}|?{' ',''})#SET{largeur,#LARGEUR_CONTEXTE2}]
[(#ENV{conteneur}|=={3}|?{' ',''})#SET{largeur,#LARGEUR_CORPS}]

<!-- ici on definit le diaporama en javascript en jquery avec le plugin innerfade -->
<script type="text/javascript">
$(document).ready(function(){
$('#docs-conteneur-diaporama').innerfade({
        speed: 'slow',
        timeout: 6000,
        type: 'sequence',
        containerheight: 'auto'
        });
});
</script>
<!-- le code du bloc lui-meme -->
<div id="docs-diaporama" class="listagebloc">
<h2>[(#TITRE|supprimer_numero)]</h2>
<ul class="listageconteneur" id="docs-conteneur-diaporama">
<!-- prendre tous les documents image de l'article et les lister dans les li -->
<!-- si il y a un descriptif, l'utiliser comme lien -->
<BOUCLE_lesdocs(DOCUMENTS){id_article}{extension==gif|png|jpg}>
<li>[<a href="(#DESCRIPTIF**)">]<img src="[(#FICHIER|image_reduire{#GET{largeur},0}|extraire_attribut{"src"})]" alt="[(#TITRE|entites_html)]" />[(#DESCRIPTIF|!={''}|?{' ',''})</a>]</li></BOUCLE_lesdocs>
</ul>
</div></BOUCLE_getart>

Pour ceux qui n’en ont jamais vu, c’est un peu beaucoup, il y a là du spip, du javascript, du "magusine", le tout mixé. le code est annoté pour ceux qui s’y intéresse.
Il faut déposer ce bloc dans le dossier "pages-custom" à la racine du site. Au besoin, le créer.
on lui donnera ici le nom de "sommaire-freediaporama.html"

2) Rendre le bloc disponible dans les gabarits

Dans le dossier pages-custom on crée au besoin un dossier "gabarits". Dans ce dossier, creer un fichier "ajout-sommaire.xml" et y mettre ce code


<?xml version="1.0" encoding="utf-8"?>
<gabarit type="defaut">
<bloc statut="2" paramdescr="id_de_l'article" param="champ" paramdefaut="">sommaire-cooldiaporama</bloc>
</gabarit>

La ligne indique que l’on dispose d’un bloc appelé sommaire-cooldiaporama, qui correspond au fichier "sommaire-cooldiaporama.html", et que ce bloc disposera dans la page gabarit d’un champ dans lequel on demande l’id d’un article.

Si le fichier "ajout-sommaire.xml" existe déjà, on ajoutera juste dans ce fichier la troisième ligne du code ci-dessus, évidemment. On peut ajouter ce bloc dans n’importe quel gabarit en créant le fichier ajout-nomdugabarit.xml aussi.

3) Uploader le tout

Si ce n’est déjà fait, uploadez vos fichiers.
A la racine du site, le dossier "pages-custom" qui contient :
- le fichier du bloc "sommaire-cooldiaporama.html"
- le fichier javascript "jquery.innerfade.js" (à prendre dans le zip de cet article ou sur le site de jquery dans les add-ons)

Le dossier "gabarits" avec à l’intérieur :
- le fichier "ajout-sommaire.xml" et d’autres si vous voulez disposer ce bloc ailleurs.

4) Activer le bloc et le configurer

Il vous reste à aller dans la page gabarit du plugin sur votre site, de visualiser le bloc cool diaporama et d’entrer dans le champ qu’il contient l’id de l’article qui contient les images à montrer. Validez, vérifiez en ligne.
Le javascript change d’image toutes les 6 secondes, si vous voulez un timing plus lent ou plus rapide, il faudra le changer dans le fichier html à la lign "timeout : 6000,", 6000 signifiant 6 secondes, faites le calcul vous même.

Répondre à cet article

Forum

  • Exemple : un diaporama en page sommaire

    6 novembre 2008, par cédric

    Aujourd’hui, je n’utilise plus que JQuery, qui est devenue une librairie javascript de référence pour les développeurs web.

    Voir en ligne : idée cadeau
    • Exemple : un diaporama en page sommaire

      25 novembre 2008, par Google

      Tout à fait d’accord avec toi !

      Voir en ligne : Google pagerank
    • Exemple : un diaporama en page sommaire

      25 avril 2010, par Affibet

      Tout à fait d’accord, j’avais pronostiqué que JQuery allait bien se développer, je crois que c’est gagné. J’aurais du miser sur ce pronostic ^^
      Merci en tout cas pour ce bel exemple !

      Voir en ligne : Paris sportifs
  • Exemple : un diaporama en page sommaire

    19 novembre 2008, par Alain

    La page ne semble pas s’afficher correctement.

    Voir en ligne : Grossiste
    • Exemple : un diaporama en page sommaire

      19 septembre 2009, par Luc

      Aucun problème avec l’utilisation de ce code sur notre site.
      Merci beaucoup pour ce diaporama, sommaire mais efficace.

      Voir en ligne : Blog shopping
    • Exemple : un diaporama en page sommaire

      18 mai 2010, par betclic

      Le code fonctionne bien également chez moi, super travail merci beaucoup !

      Voir en ligne : Betclic
  • Exemple : un diaporama en page sommaire

    6 janvier 2009, par serge

    Bonjour, Je découvre Magusine et j’ai réalisé le bloc-sommaire cooldiaporama pour mieux comprendre... Et effectivement je comprends mieux plein de choses !
    Et patatra... Je veux montrer ma réalisation à une personne qui utilise Internet Explorer (v.7)(le C.. !) et je constate avec effroi que ça ne marche pas avec cet "# ?@%*£" de M.... d’IE7 (sous Chrome et Firefox, c’est impeccable. Évidemment !).
    J’ai aussi fait un article intégrant GoogleMap... Pareil !?
    Si quelqu’un connait un embryon de piste à travailler ? Merci !
    (v. http://www.pintout.com)

    • Exemple : un diaporama en page sommaire

      27 juillet 2009, par Edouard

      Bonjour
      Pouvez vous me transmettre cet article au format pdf ?

      Voir en ligne : Diakaz
    • Exemple : un diaporama en page sommaire

      15 octobre 2009, par Bingo

      @Edouard si tu veux je peux te l’envoyer par e-mail mais pour cela il faudrait que tu m’envoie ton adresse mail, tu peux me contacter directement sur mon site de bingo (rubrique contact)

      Voir en ligne : Bingo en ligne
  • Exemple : un diaporama en page sommaire

    23 mars 2009, par serge

    J’ai simplement utilisé le plugin Diaporama-Innerfade. en ré-écrivant le bloc "cooldiaporama" comme indiqué dans la fiche du plugin...


    « 

    diaporama

    [(#TITRE|supprimer_numero)]

     »

    en lieu et place de l’exemple donné dans cette rubrique.
    Et ça marche.

    • Exemple : un diaporama en page sommaire

      24 septembre 2009, par kambody

      Trop dur pour mon niveau en info.. quand je serais un geek.. hi hi hi

      Voir en ligne : Ben du Cambodge
  • Exemple : un diaporama en page sommaire

    31 octobre 2009, par Vanessa

    Merci pour cet exemple illustré petites annonces

    • Exemple : un diaporama en page sommaire

      3 décembre 2009, par Bingo

      @kambody Pas la peine d’être un geek :) avec un peu d’entrainement ça rentre tout seul

      Voir en ligne : Jouer au bingo
  • Exemple : un diaporama en page sommaire

    13 mars 2010, par folsaintjust

    Super ! Pas besoin d’y connaitre quoi que ce soit ! on télécharge le dossier compressé fourni ci-dessus. On le décompresse. On le renomme "pages-custom" et on le met à la racine du site par FTP. Si on n’a pas encore fait de modifications de ce type, ça s’arrête là ! C’est mon cas. Comme je n’avais pas encore de dossier "pages-custom", je n’ai pas eu de modifications à faire. ça marche très bien.
    En revanche, j’utilise le thème "Women-Life" (excellent !) et le diaporama se superpose aux autres éléments qui sont dans la même colonne contextuelle. De la même manière, cette colonne est verte et le diaporama n’affiche pas ce fond vert. En résumé, l’affichage des images est superposé et ne crée pas de fond qui déclaerait le reste de la colonne plus bas. Y a-t-il une manip facile à faire ? Merci d’avance.
    Au fait, au passage, comme j’adore Magusine et que je trouve que c’est l’outil idéal pour développer une culture populaire sur le Net, est-ce que le projet de Magusine 2 est abandonné ?

  • Exemple : un diaporama en page sommaire

    4 avril 2010, par Léonie

    C’est simple, c’est clair, c’est sympa ... merci petites annonces gratuites

  • Exemple : un diaporama en page sommaire

    7 mai 2010, par tiptop

    Parfait, c’est exactement ces explications que je cherchais !

  • Exemple : un diaporama en page sommaire

    25 mai 2010, par ipad

    Pour une fois que l’on trouve des tutos pour SPIP clair et concis. Merci bien !

    Voir en ligne : iPad