Replier/déplier des blocs dans la sidebar (Créer un compte)

  • Statut : non résolu
15 sujets de 1 à 15 (sur un total de 25)
  • Auteur
    Messages
  • #448478
    ClicClac
    Participant
    Padawan WordPress
    73 contributions

    Bonjour,

    Je cherche un plug-in ou un thème qui permette cela, un peu comme Bloxpress mais en plus simple.
    Si vous avez déjà vu ça…

    #578967
    Lamiseaunet
    Membre
    Initié WordPress
    35 contributions

    Je ne vois pas. Par contre, il y a la libraire de plug-in wordpress que tu connais peut-être déjà. Si tu te sens d’attaque de modifier le thème, tu peux également écrire le javascript comme cela :

    
    
    	
    		function display(bookid){
    			book=document.getElementById(bookid);
    			if(book.style.display==”block”){
    				book.style.display=”none”;
    			}else{
    				book.style.display=”block”;
    			}
    
    		}
    	
    	
    		*{
    		font-face:Tahoma;
    		font-size:10px;
    		}
    		div{
    		float:left;
    		margin-right:600px;
    		}
    	
    
    
    	<div>
    		<a href="display('book1');">cliquez ici </a>
    	</div>
    	<div id="book1">
    	<p>
    		Aliquam erat volutpat. Sed id dui. Suspendisse potenti. Mauris quis quam vitae arcu ornare elementum. Nunc sit amet est ac dui dapibus imperdiet. Praesent sed dolor sed quam aliquam commodo. Aenean sit amet leo. Curabitur eget lorem vel tellus lacinia iaculis. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Suspendisse convallis faucibus dolor. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Proin vitae dui sed velit sollicitudin accumsan. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In at augue. Sed lobortis tellus quis massa. Vivamus tristique. Maecenas imperdiet felis eu purus. Sed vitae sem in mauris tempor sagittis. Integer ullamcorper. Pellentesque a est.
    	</p>
    	</div>

    #578968
    Anonyme
    Inactif
    Padawan WordPress
    80 contributions

    il y a moofx qui fait ça très bien : http://moofx.mad4milk.net/

    #578969
    ClicClac
    Participant
    Padawan WordPress
    73 contributions

    Merci à vous deux, c’est exactement ça. Je testerai ça ce w/e.

    #578970
    ClicClac
    Participant
    Padawan WordPress
    73 contributions
    Lamiseaunet wrote:
    Si tu te sens d’attaque de modifier le thème, tu peux également écrire le javascript comme cela :

    Simple et efficace. Manque juste la mémorisation des blocs d’1 page à l’autre. Je regarde du coté des cookies.

    #578971
    ClicClac
    Participant
    Padawan WordPress
    73 contributions
    ClicClac wrote:
    Simple et efficace. Manque juste la mémorisation des blocs d’1 page à l’autre. Je regarde du coté des cookies.

    Ca y est, c’est fait. C’est par ici.

    Le bloc WordPress

    <div class="block">
    	<div class="caption">
    		<h3>Categories</h3>
    		<a href="display('categorie');" title="Minimiser ce bloc"><img src="/img/icon_minimize.gif” alt=”(X)”></a>
    	</div>
    	<div class="expand" id="categorie" style="display:;”>
    		blabla
    	

    Une fonction php

    Les fonctions JS
    Pour lire et ecrire les cookies, j’ai pris les fonctions suivantes:
    //http://www.actulab.com/ecrire-les-cookies.php
    //http://www.actulab.com/lire-les-cookies.php

    // La fonction de Lamiseaunet

    function display(bookid){
    book=document.getElementById(bookid);
    if(book.style.display==”block”){
    	book.style.display=”none”;
    	}else{
    	book.style.display=”block”;
    	}
    }
    
    function switchCookie(cookie){
    date=new Date;
    date.setMonth(date.getMonth()+1);
    val=LireCookie(cookie);
    if (val == 0) {
    	EcrireCookie(cookie, “1”, date)
    	}
    else {
    	EcrireCookie(cookie, “0”, date)
    	}
    }

    #578972
    Qwindoo
    Modérateur
    Maître WordPress
    2862 contributions

    Super 😋 🙂

    #578973
    Qwindoo
    Modérateur
    Maître WordPress
    2862 contributions

    Au fait on doit pouvoir simplifier la fonction PHP comme ceci :

    function displayBlock ($block)
      {
        return (!isset($_COOKIE[$block]) || $_COOKIE[$block] == 1) ? ‘block’ : ‘none’;
      }

    Pas testé mais ça devrait marcher 😉

    Edit: Ca marche parfaitement, mais comment faire pour changer le “+” en “-” et inversement ? (comme dans IPB pour les catégories) ?

    #578974
    ClicClac
    Participant
    Padawan WordPress
    73 contributions
    MS-DOS_1991 wrote:
    Au fait on doit pouvoir simplifier la fonction PHP comme ceci :

    function displayBlock ($block)
      {
        return (!isset($_COOKIE[$block]) || $_COOKIE[$block] == 1) ? ‘block’ : ‘none’;
      }

    Pas testé mais ça devrait marcher 😉

    Je te crois, mais pour moi sur une seule ligne, c’est incomprehensible 😉

    Il reste juste un léger pb: si on visite le site, qu’on referme les blocs, puis qu’on désactive JS, les blocs restent fermés jusqu’à ce que le cookie expire ou qu’on reactive JS. Pas super genant, mais bon.

    #578975
    Lamiseaunet
    Membre
    Initié WordPress
    35 contributions

    Cool.
    J’aurais proposé des blocs repliés à la première visite, histoire d’avoir une vue d’ensemble.

    #578976
    Martin
    Membre
    Chevalier WordPress
    484 contributions

    Salut,

    pourrais-tu faire un résumé de ce qu’il faut faire ? Voire un article sur le CODEX…merci !

    #578977
    Qwindoo
    Modérateur
    Maître WordPress
    2862 contributions
    Lamiseaunet wrote:
    Cool.
    J’aurais proposé des blocs repliés à la première visite, histoire d’avoir une vue d’ensemble.

    Et pour ceux qui n’ont pas le JavaScript (handicapés, etc) ? 😕

    #578978
    Lamiseaunet
    Membre
    Initié WordPress
    35 contributions

    Et pour ceux qui n’ont pas le JavaScript (handicapés, etc) ?

    Les handicapés n’ont pas le javascript ?😉
    Il reste la possibilité de désactiver aussi les feuilles de style (tant qu’on y est),
    ils verront tout d’un coup… c’est là un des nombreux avantage des CSS, quelque soit l’instrument utilisé, rien n’empêchera de consulter l’information.

    #578979
    Ellaurenzovfoot
    Participant
    Chevalier WordPress
    224 contributions
    ClicClac wrote:
    ClicClac wrote:
    Simple et efficace. Manque juste la mémorisation des blocs d’1 page à l’autre. Je regarde du coté des cookies.

    Ca y est, c’est fait. C’est par ici.

    Le bloc WordPress

    <div class="block">
    	<div class="caption">
    		<h3>Categories</h3>
    		<a href="display('categorie');" title="Minimiser ce bloc"><img src="/img/icon_minimize.gif” alt=”(X)”></a>
    	</div>
    	<div class="expand" id="categorie" style="display:;”>
    		blabla
    	

    Une fonction php

    Les fonctions JS
    Pour lire et ecrire les cookies, j’ai pris les fonctions suivantes:
    //http://www.actulab.com/ecrire-les-cookies.php
    //http://www.actulab.com/lire-les-cookies.php

    // La fonction de Lamiseaunet

    function display(bookid){
    book=document.getElementById(bookid);
    if(book.style.display==”block”){
    	book.style.display=”none”;
    	}else{
    	book.style.display=”block”;
    	}
    }
    
    function switchCookie(cookie){
    date=new Date;
    date.setMonth(date.getMonth()+1);
    val=LireCookie(cookie);
    if (val == 0) {
    	EcrireCookie(cookie, “1”, date)
    	}
    else {
    	EcrireCookie(cookie, “0”, date)
    	}
    }

    Où doit on mettre chacune de ses fonctions?

    #578966
    Ellaurenzovfoot
    Participant
    Chevalier WordPress
    224 contributions

    Je re-up apreès avoir effectué quelques essais… malheureusement infructueux….
    J’ai à peu près compris le fonctionnement du premier bloc, cependant il me met une croix en dessous de catégorie, impossible a cliquer….
    Enfin cela vient peut-être du fait que j’ai seulement copier coller ton code… que dois-je faire en plus? J’aivu qu’il faisait appel a un .gif
    De plus, je ne vois pas ou copier la fonction php du deuxième bloc, je l’ai mis directement dans la sidebar comme cela, mais j’ai peur que ce ne soit pas cela qu’il faille faire….
    Finalement pour le js…. ayant vu sur actualab que cela se mettait entre le head et le title, j’ai voulu le mettre dans le header, mais quand je le met, cela m’affiche le code du js et me dit erreur …..

    J’avoue ne rien connaître/comprendre en info, et donc là je suis un peu perdu, depuis un mois sur mon wordpress…. désolé pour toutes ces questions….

15 sujets de 1 à 15 (sur un total de 25)
  • Le forum ‘Utilisation spécifique de WordPress’ est fermé à de nouveaux sujets et réponses.