Balises Bloc deplier/replier (plugin)

Balises pour deplier/replier un bloc d’info, comme dans l’espace privé.

DEREBLOC, Plugin pour spip 1.9.x/2.x, proposant 3 balises pour créer des blocs d’information, lignes de tables, à déplier/replier ; comme dans l’espace privé.

Les trois balises suivantes, qui s’utilisent toujours en « trio » et dans cet ordre :

#BOUTON_BLOCK , #DEBUT_BLOCK , #FIN_BLOCK

vont vous permettre d’afficher, ou plutôt, dissimuler dans vos pages des blocs d’infos, lignes de tables qui se « déplient » et se « replient », avec le « petit triangle » de dépliement, comme dans de nombreux blocs de l’Espace Privé.

L’usage en est fort simple !
Vous pouvez en placer plusieurs dans un squelette, sans qu’il y ait de liens entre chaque « trio ».

Installation

1. le plugin.
Comme pour toute installation de plugin dans Spip 1.9, placez le contenu de l’archive jointe : derebloc-0_2.zip, dans le répertoire plugins/ de SPIP.
plugins/derebloc/

2. Activation
Dans le backoffice, page Gestion des Plugins, activez :
Deplier-Replier Blocks.

Squelettes

L’entête de vos squelettes doivent, bien-sûr, contenir la Balise #INSERT_HEAD (voir Documentation de SPIP) :

<head>
...
...
#INSERT_HEAD
</head>
<body>
...

Dans le code de vos squelettes, insérer le « trio » de balises autour des éléments à déplier/replier.
Exemple :

<B_art>
#BOUTON_BLOCK -- Des articles<br />
#DEBUT_BLOCK
<BOUCLE_art(...){...}>
[(#TITRE)] - [(#DATE|affdate)]
</BOUCLE_art>
#FIN_BLOCK
</B_art>

... autre exemple sur un tableau :

<B_tout>
<table width="500" cellpadding="0" callspacing="0" border="0">
<tr>
<th></th>
<th>col-1</th>
<th>col-2</th>
<th>col-3</th>
</tr>                       
<BOUCLE_tout(...){...}>
<tr>
<td width="3%">#BOUTON_BLOCK</td>
<td>.. blabla ..</td>
<td> .. blabla ..</td>
<td>.. blabla ..</td>
</tr>
<tr><td colspan="4">
#DEBUT_BLOCK
... les infos du " Block cacher à déplier " ...
#FIN_BLOCK
</td></tr>
</BOUCLE_tout>
</table>
</B_tout>

Infos ... spip 2.x - sept 09

Version 0.4, par E. Sarda, pour spip 2.x ! La balise bouton_block peut recevoir un tire en argument.

Infos ... 1.9.2 - 17/04/2007

La version 0.3 se voit modifiée pour aller chercher le fichier layer.js au bon endroit.

Infos ... 1.9.1

Le plugin fournis la définition des trois balises en surcharge à mes_fonctions, et, écris dans le <head> </head> l’appel du fichier ecrire/img_pack/layer.js .

Discussion

20 discussions

  • Bonjour,
    Sous spip 3 en privé les balises du couteau suisse fontionnent bien, et sont les même que les vôtres...mais pas en public, savez-vous comment faire pour avoir ces blocs dépliables fonctionnels sous spip3 partie publique ?
    Merci

    Répondre à ce message

  • 2
    multicite

    Bonjour

    En version SPIP 2.0.10 [14698] j’ai essayé d’intégrer ce plugin.

    Mais les images des triangles ne s’affichent pas : l’appel à la feuille de style les contenant ne se fait pas. Un oubli ou une dépendance avec un autre plugin ?

    Cordialement

    ec

    • Même soucis avec spip 2.1.1 et version 0.4 ! Dommage, c’était super pratique à utiliser. Si quelqu’un a une piste ... merci !

    • Pour spip 2x,
      Il faut passer directement par les « blocs dépliables » du couteau Suisse et modifier les balises d’appels.

      Au lieu de :
      -  #BOUTON_BLOCK mettre #BLOC_TITRE
      -  #DEBUT_BLOCK mettre #BLOC_DEBUT
      -  #FIN_BLOCK mettre #BLOC_FIN
      (indiqué dans le couteau Suisse)

    Répondre à ce message

  • Les syntaxes semblent correctes. Le programme ’layer.php’ fonctionne en domaine privé mais apparemment il manque quelque chose pour que le plugin fonctionne sous 2.1.x !. J’ai cherché mais n’ai pas trouvé ce qu’il peut y avoir.
    Dommage car ce plugin est très sympa.

    Répondre à ce message

  • 1

    Excellente contrib.

    SVP, please, Bitte schön....
    Une version Spip 2.x !!!!

    Répondre à ce message

  • Ben... heu.. il manque plus que la version compatible pour Spip 2.0.* :)

    Répondre à ce message

  • Une autre solution pour qu’on puisse cliquer aussi sur le titre : ajouter après #BOUTON_BLOCK le span suivant :

    <span class="swap-couche" onclick="swap_couche('bout#COMPTEUR_BOUCLE-#COMPTEUR_BOUCLE','','dist/images/',0);">

    et bien le fermer avant #DEBUT_BLOCK, ce qui donne : </span> #DEBUT_BLOCK.

    Pour créer l’illusion d’un lien cliquable, il faut afficher le pointeur « lien » (petite main) lorsqu’on passe la souris dessus : ajouter dans la feuille de style .swap-couche { cursor:hand; cursor:pointer; }

    Et là c’est impec ! Merci pour le plugin !

    Répondre à ce message

  • 1
    Stéphane

    Ça marche nickel, mais j’aurais une petite demande.
    Est-il possible, plutôt que d’avoir un triangle qui engendre le dépliement, d’avoir à la place du texte personnalisable ?
    Par exemple : je veux que le lien « super ton plugin » engendre, uns fois qu’on clique dessus, le dépliement, le tout sans triangle ?
    C’est possible ?

    Par exemple, imaginons, dans mon squelette que, pour cela, je n’ai qu’à écrire :

    #DÉBUT_BOUTON_BLOCKsuper ton plugin#FIN_BOUTON_BLOCK

    Peut-on créer un truc du genre ?

    Merci mille fois.

    • Pépée Carvalho

      Salut,
      Un ami m’a aidé a faire ce que tu demandes (soit plier/déplier sur plus que le triangle) mais sans enlever le triangle. Je pense que tu as trouvé depuis le temps mais j’écris pour si une nouvelle personne a le problème.

      J’ai mis comment faire sur mon site : http://en-charrette.net/spip.php?article10

      ++
      pp

    Répondre à ce message

  • ne serait il pas plus pertinent d’utiliser la convention d’écriture en balise xHTML et celle de spip (pour les boucles) pour mieux comprendre et visualiser les éléments englobés ? Je trouve qu’on rajoute à la confusion, #MODELE étant utilisé pour insérer un élément (comme #BOUTON_BLOCK )

    <BLOCK_DEPLIER>
    ..
    ..
    </BLOCK_DEPLIER>

    Répondre à ce message

  • 1

    Bonjour ! Merci pour ce plugin vraiment simple d’utilisation !
    J’ai un petit problème : J’aimerai que mes blocks soient déjà dépliés à l’ouverture de la page. Donc le contraire quoi... C’est possible ?

    Merci !

    • Bonjour,

      C’est possible avec le plugin couteau suisse dans le texte des articles. Comme il est indiqué dans la description de l’outil sur la page de configuration du couteau suisse :

      Dans les textes SPIP : les rédacteurs ont à disposition les nouvelles balises (ou ) et à utiliser dans leurs textes.

      Par contre je ne crois pas que cela soit possible à l’aide des balises dans les squelettes à moins de bidouiller le code.

      Bon courage ++

    Répondre à ce message

  • 5

    Bonjour et merci pour cette contrib,

    J’ai vu que le bouton qui permet de déplier le bloc est défini dans le fichier layer.php mais je ne sais pas comment le modifier.

    Je voudrais pourvoir modifier ce bouton et le remplacer par un lien, croyez-vous que c’est possible ?

    En fait je liste les articles d’une rubrique sous forme de liste comme ceci :

    <li>#BOUTON_BLOCK #TITRE #DEBUT_BLOCK #TEXTE #FIN_BLOCK</li>

    Ce que je voudrais, c’est que quand l’utilisateur clique sur le titre de l’article, le texte de l’article s’affiche en dessous.

    Merci d’avance pour vos réponses.

    • Oui, à vue de nez ça devrait être possible en redéfinissant les fonctions de layer.php dans le plugin. Je vois ça dès que possible. En attendant placez le bouton après le TITRE !

    • bonjour et merci pour cette contrib qui m intéresse au plus au point.
      pour ma part j’ essaie de l’ adapter pour que les documents (images) d’ un article apparaissent suite au clic sur l image référence de cet article.
      PB je n arrive pas à trouver l endroit ou intervenir pour que ce soit un document du dit article qui apparaisse pour ensuite être cliqué et dérouler le contenu.
      J espere avoir été clair et si l’ un d’ entre vous pouvez m’ aiguiller, je l’ en remercie par avance

    • Autre piste ... le plugin « Couteau-suisse ». Voir « lame » : bloc dépliable !

    • super piste pour le lien en texte
      ça fonctionne d enfer
      en revanche je ne vois pas trop comment insérer le bloc propre au texte spip pour les documents.
      la piste si docile pour les liens texte aurait elle un équivalent pour les images ?
      merci

    • super piste pour le lien en texte
      ça fonctionne d enfer
      en revanche je ne vois pas trop comment insérer le bloc propre au texte spip pour les documents.
      la piste si docile pour les liens texte aurait elle un équivalent pour les images ?
      merci

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

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