SPIP-Contrib

SPIP-Contrib

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

273 Plugins, 191 contribs sur SPIP-Zone, 64 visiteurs en ce moment

Accueil du site > Navigation > Menus réactifs > ADX Menu > ADX Menu : un joli menu déroulant

ADX Menu : un joli menu déroulant

7 septembre 2010 – par PieroWbmstr – 65 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

7 votes

Le plugin ADX Menu pour SPIP 2.0 (et plus) est une adaptation du menu CSS/JavaScript « ADXmenu » de Aleksandar Vacic ; il permet de mettre en place un menu ouvrant horizontalement ou verticalement en CSS (et Javascript pour IE<7).

Script original et informations sur le site : http://aplus.rs/.

Page de démonstration : http://spip.pierowbmstr.fr/spip.php... (documentation livrée avec le plugin).

Installation

  1. Téléchargez l’archive ’.zip’ de cette page vers le dossier de plugins de votre SPIP
  2. Installez le plugin depuis votre espace privé comme expliqué ici : http://www.spip.net/fr_article3396.html
  3. Si vous avez CFG, accédez à la page du plugin via le bouton de l’onglet ’Configuration’ de l’espace privé (réservé aux webmestres du site).

À noter que le plugin est hébergé sur un serveur distant. Sa dernière version stable est toujours disponible à la même URL (cela peut permettre une mise à jour automatique) : http://projets.ateliers-pierrot.fr/....

Utilisation & configuration

Le plugin peut s’utiliser de deux façons détaillées plus loin :

  • en utilisant la balise #ADXMENU,
  • en utilisant la classe CSS « adxm admenu ».

Il est prévu pour proposer une page de configuration grâce au plugin CFG : moteur de configuration mais celui-ci n’est pas obligatoire.

La page de configuration permet de définir notamment le sens d’ouverture du menu ; celui-ci peut être horizontal, de bas en haut ou de haut en bas, mais aussi vertical, de gauche à droite ou de droite à gauche [1].

Aperçu

PNG - 13.9 ko
Copie d’écran ADX Menu

La balise #ADXMENU

Cette balise s’utilise seule par défaut, mais peut prendre les trois arguments suivants :
-  liste des rubriques (par défaut tous les secteurs) :
Liste des ID de rubriques à inclure dans le menu, séparés par deux-points ;
-  longueur avant de couper les titres (par défaut 30) :
Nombre de caractères au-delà desquels les titres seront tronqués ;
-  caractère(s) de coupe (par défaut « . »)  :
Le ou les caractères qui seront indiqués pour un titre tronqué.

Exemple pour un menu contenant les rubriques 1, 3 et 12, des titres coupés à 50 caractères et auxquels on ajoute « ... » :

  1. #ADXMENU{1:3:12,50,...}

Le modèle utilisé par la balise expose la rubrique ou l’article courant, à la façon de SPIP. Si un identifiant de rubrique est trouvé dans le contexte (dans les boucles de la page), le titre de la rubrique en question portera la classe CSS on, ainsi que tous ses parents. S’il s’agit d’un article, le titre de l’article portera la classe CSS on ainsi que toutes ses rubriques parentes : secteur, rubrique, sous-rubrique puis article ...

La classe « adxm admenu »

L’effet menu ouvrant s’applique en ajoutant simplement la classe « adxm adxmenu » à n’importe quel menu (liste imbriquée de <ul><li>) [2].

Exemple :

  1. <ul class="adxm adxmenu">
  2.         <li>un item de menu</li>
  3. </ul>

Personnalisation

Les styles CSS des différents liens ou items du menu sont personnalisables dans le fichier CSS présent à la racine du plugin :
-  "adxmenu_css_styles.css.html"

A noter également, si vous avez besoin de modifier l’ensemble de l’apparence du menu, que les styles définissant la disposition des blocs, leur apparence au passage de la souris et toute la mécanique du menu sont modifiables dans les fichiers CSS (complexes) :
-  "adxmenu_css.css.html"
-  "adxmenu_css_ie.css.html"

Il est conseillé de bien tester vos personnalisations pour vérifier que le menu est toujours présentable (!). À noter ici qu’il est possible de coloriser la zone de sécurité des items du menu en décommentant la ligne 91 du fichier « adxmenu_css.css.html » (une zone rouge encadrera chaque item).

Compatibilité

Les CSS utilisés pour générer le menu sont compatibles avec la distribution (bien-sûr) mais également avec les squelettes Z compatibles. Vous pouvez notamment, si vous utilisez un squelette Zpip, préciser la classe « adxm adxmenu » au menu général utilisé par le squelette, l’effet ouvrant s’ajoutera automatiquement, en accord avec le sens d’ouverture de vos réglages [3].

Conditions d’utilisation

La version originale du script du menu est proposée par son auteur sous licence Creative Commons Attribution. Il est donc demandé d’indiquer sur la page de crédits de votre site l’information :

Ce site web utilise ADxMenu, par studio.aplus

Pour plus d’informations, reportez-vous à la page dédiée par l’auteur : http://aplus.rs/adxmenu/buy/.

Notes

[1Cette option n’est accessible que si le plugin CFG est installé sur votre site. À défaut, vous pouvez éditer directement le fichier ’adxmenu_options.php’ à la racine du plugin.

[2Cette méthode permet notamment d’utiliser le plugin sur des menus définis grâce au plugin Menus, en ajoutant au menu concerné la classe « adxm adxmenu ».

[3À noter ici que des problèmes d’affichage persistent sur des squelettes Z pour les menus verticaux ...

Retour en haut de la page

Vos commentaires

  • Le 23 janvier à 20:47, par paoloM34 En réponse à : ADX Menu : un joli menu déroulant

    Bonjour,

    Je débute avec spip et je galère un peu. J’utilise le squelette eva web 4.1 pour un collège et j’ai configuré ma page sommaire avec un menu classique à droite contenant les différentes rubriques du site. J’ai installé le plugin et je l’ai activé puis configuré avec cfg. Mais je ne sais pas où placer la balise pour que le menu soit déroulant. Merci de votre aide.

    • Le 31 janvier à 22:40, par PieroWbmstr En réponse à : ADX Menu : un joli menu déroulant

      Salut Paolo,

      Il faut que tu mettes la balise exactement là où tu veux voir le menu dans les squelettes de tes pages.

      S’il apparaît mais n’est pas déroulant, c’est qu’il y a un problème de CSS (le fichier « adxmenu.css.html » n’est pas chargé) ... Si tu rencontres ce problème, vérifie que tes squelettes utilises bien la balise INSERT_HEAD (si ce n’est pas le cas, il faut l’ajoute, sur le modèle de « squelettes-dist/inc-entete.html »).

      P.

    Répondre à ce message

  • Le 11 janvier à 12:00, par nico4peace En réponse à : ADX Menu : un joli menu déroulant

    Bonjour,

    Je souhaite que les rubriques soient classées par num titre.

    Le critère y est, les rubriques ont un numéro or l’affichage ce fait par id_rubrique ?

    La boucle de adxmenu :

    <BOUCLE_adxm_secteurs(RUBRIQUES)
            {par id_rubrique, num titre, titre}
            {id_rubrique IN (#ENV{adx_rub})}
    >

    Le lien du site ICI

    Avez vous une solution ou une idée ?

    cdt

    Répondre à ce message

  • Le 6 août 2011 à 13:10, par Ymagination En réponse à : ADX Menu : un joli menu déroulant

    Bonjour

    Le menu est super. Il fonctionne très bien sur Mozilla
    mais sur IE lorsque je veux aller sur le site
    cela m’indique

    Fatal error : Call to undefined function : sql_select() in /mnt/141/sda/0/f/monsite/plugins/ADXmenu/balise/adxmenu.php on line 27

    Est ce que quelqu’un peut m’aider SVP

    • Le 1er septembre 2011 à 08:15, par PieroWbmstr En réponse à : ADX Menu : un joli menu déroulant

      Salut,

      Si ton problème est toujours d’actualité, ajoute simplement en haut du fichier ’balise/adxmenu.php’ la ligne :

      1. include_spip('base/abstract_sql');

      Ca devrait corriger l’erreur (pour une raison qui m’échappe, SPIP ne charge pas les fonctions SQL ... d’où ton erreur).

      @+ P.

    • Le 13 septembre 2011 à 09:12, par Alexandre En réponse à : ADX Menu : un joli menu déroulant

      Merci pour le dépannage, je rencontrais le même problème avec firefox dans certaines situations (après clic sur « se déconnecter »).
      Cordialement !

      AC

    Répondre à ce message

  • Le 22 juillet 2011 à 11:04, par Edmund En réponse à : ADX Menu : un joli menu déroulant

    Incroyable ce plugin....
    Il a un effet pourtant que je cherche à supprimer : il génère des pages plus longues qu’elles ne le sont réellement, si bien que même si votre page « tient » dans un petit écran, il apparaît tout de même un ascenseur dans les navigateurs avec beaucoup d’espace blanc sous la page internet.

    Je me suis fais comprendre ? Y a-t-il une parade ? Merci d’avance.

    • Le 1er septembre 2011 à 08:19, par PieroWbmstr En réponse à : ADX Menu : un joli menu déroulant

      Salut Edmund,

      Je réponds un peu tard ... et sans solution :-(

      On m’avait déjà renvoyé ce souci mais je ne vois pas comment le corriger ... Si tu as trouvé la solution, fais un retour ici, je l’intégrerai au plugin.

      Merci - P.

    • Le 1er septembre 2011 à 15:24, par Alfred En réponse à : ADX Menu : un joli menu déroulant

      Bonjour à tous,
      L’espace généré, c’est l’espace estimé pour que tous vos articles s’affichent, ou toutes vos sous-rubriques si vous en avez beaucoup. Donc :
      -  Si la liste de tous vos article est moins longue que votre page sans menu déroulé, alors le problème n’apparaît évidemment pas.
      -  Si il apparaît, et si comme moi il est gênant pour l’aspect de votre page, on peut modifier les boucles de telle manière à ne pas afficher le titre des articles mais seulement les sous-rubriques.

    Répondre à ce message

  • Le 28 juillet 2011 à 11:18, par cvrlh En réponse à : ADX Menu : un joli menu déroulant

    Bonjour et merci pour ce plug-in très pratique, j’ai une petite question :
    est-il possible d’intégrer des boucles spip dans le fichier adxmenu_css_styles.css.html ?
    Il contient déjà les éléments nécessaire (renommage .html, #cache, Http header...) donc je suppose que ça pourrait fonctionner mais en tentant un
    background : url(’IMG/(#LOGO_RUBRIQUE’) no-repeat ;
    je me retrouve sans fond donc je suppose qu’il manque quelque-chose quelque-part (dans adxmenu_options.php peut être ?)

    Merci de me répondre si vous avez une idée.

    • Le 1er septembre 2011 à 08:12, par PieroWbmstr En réponse à : ADX Menu : un joli menu déroulant

      Salut,

      Désolé, je réponds un peu tard, mais chez moi ça marche nickel. Exemple de boucle dans « adxmenu_css_styles.css.html » :

      1. <BOUCLE_rubs(RUBRIQUES){racine}>
      2. [(#LOGO_RUBRIQUE|fichier|=={''}|non)
      3. .ma_classe_#ID_RUBRIQUE {
      4.         background: transparent url('#CHEMIN{IMG/#LOGO_RUBRIQUE|fichier}') no-repeat top left;
      5. }
      6. ]
      7. </BOUCLE_rubs>

      Il faut bien faire attention aux parenthèses, accolades etc, qui peuvent créer un conflit entre SPIP et le CSS classique (il vaut mieux écrire les balises sans rien dans la définition CSS).

      @+ P.

    Répondre à ce message

  • Le 19 juillet 2011 à 16:31, par pierre En réponse à : ADX Menu : un joli menu déroulant

    Slt.
    Merci pour tout.

    Répondre à ce message

  • Le 7 juin 2011 à 12:26, par Pierre En réponse à : ADX Menu : un joli menu déroulant

    J’utilise ADX MENU avec ZPIP.
    Toute fois j’aimerai savoir comment personnaliser (agrandir) l’espace entre les différents menu. Quel paramètre dois je modifier et dans quel fichier ?

    • Le 8 juin 2011 à 07:26, par PieroWbmstr En réponse à : ADX Menu : un joli menu déroulant

      Salut,

      Il faut que tu édites l’un des fichiers CSS « adxmenu_css.css.html » ou « adxmenu_css_styles.css.html » (cf. chapitre Personnalisation).

      J’imagine que tu cherches espacer les « li » (et non pas les « menus »), pour ça tu peux jouer sur les « margin » mais attention, le CSS d’un menu déroulant est compliqué ...
      Il faut bien tester tes modifs : vider le cache de SPIP et celui de ton navigateur avant de recalculer la page.

      P.

    • Le 10 juin 2011 à 10:13, par Pierre En réponse à : ADX Menu : un joli menu déroulant

      Bjr.
      Merci déjà pour votre réaction. J’ai essayer de tordre le coup au fichier adxmenu_css.css.html via sa variable margin pour avoir l’effet désiré sans succès. En effet, seul le fichier adxmenu_css.css.html possède la variable margin, adxmenu_css_styles.css.html n’en possède pas. Le seul effet visible que j’ai obtenu c’est la largeur des sous menu qui changeait. Moi j’aimerai bien changer la largeur des menus de premier niveau(rubrique et non sous rubrique ou article) pour occuper toute la bande de menu.
      Bien plus, ma second préoccupation concerne la couleur du menu lorsqu’on y place la souris. Est il possible de modifier sa couleur, afin de donner à l’internaute une marque sur la rubrique courante de navigation ?

      Merci d’avance !!!

    • Le 18 juillet 2011 à 17:22, par DD En réponse à : ADX Menu : un joli menu déroulant

      Voici ce que j’ai fait :

      largeur des items du 1er niveau :

      .adxmenu a {  
      text-decoration:none;
      color: #fff;
      padding: 2px 1em 3px 1em;
      display:block;[
      (#GET{ouverture}|=={horizontal}|oui)position: relative;]
      }
      Couleur au survol :
      ul.adxmenu ul li a {background: #289688 ; width: 10em; }
      ul.adxmenu  li ul li a:hover, ul.adxmenu  li a:hover {background:#6296BF; }       
      .adxmenu a:hover, .adxmenu li:hover>a {background: #289688 ; }

      tout ceci à adapter selon tes besoins ;

      par contre je n’ai pas encore réussi à exposer la rubrique de 1er niveau en cours.

      dd

    • Le 18 juillet 2011 à 21:51, par PieroWbmstr En réponse à : ADX Menu : un joli menu déroulant

      Salut,
      Désolé, j’ai laissé passer la discussion ...

      Pour info, l’objet exposé est maintenant en classe « on » (j’ai repris le fonctionnement par défaut de SPIP).
      Par contre, s’il s’agit d’un article d’un sous-menu, toutes les rubriques parentes sont actives (secteur, rubrique, sous-rubrique puis article ...).
      C’est dans la version 1.23 disponible tout de suite : http://projets.pierowbmstr.fr/SPIP_....

      Sinon, les CSS de DD sont nickels ... Pierre, est-ce que tu t’en es sorti ??

      ++ P.

    Répondre à ce message

  • Le 9 juillet 2011 à 00:38, par DD En réponse à : ADX Menu : un joli menu déroulant

    Très bien ce plugin de menu !

    C’est celui que j’arrive le mieux à intégrer et à customiser sans tout casser à la 1e mise à jour.

    merci.

    Répondre à ce message

  • Le 17 mai 2011 à 10:42, par Marie En réponse à : ADX Menu : un joli menu déroulant

    Bonjour

    J’utilise ce plugin avec le squelette « par défaut » de spip. J’ai rajouté ul class="adxm adxmenu" dans le document « inc-rubriques » comme ceci :

    1. <B_rubriques>
    2. <div class="menu rubriques">
    3.         <h2><:rubriques:></h2>
    4.         <ul class="adxm adxmenu">
    5.         <BOUCLE_rubriques(RUBRIQUES) {racine} {par num titre, titre}>
    6.                 <li>
    7.                         <a href="#URL_RUBRIQUE"[ class="(#EXPOSE)"]>[(#TITRE|couper{80})]</a>
    8.                         <B_sous_rubriques>
    9.                         <ul>
    10.                                 <BOUCLE_sous_rubriques(RUBRIQUES) {id_parent} {par num titre, titre}><BOUCLE_test_expose(RUBRIQUES) {id_enfant}>#EXPOSE{' '}</BOUCLE_test_expose>
    11.                                         <li><a href="#URL_RUBRIQUE"[ class="(#EXPOSE)"]>[(#TITRE|couper{80})]</a><BOUCLE_re(BOUCLE_sous_rubriques)></BOUCLE_re> </li>
    12.                                 </B_test_expose></BOUCLE_sous_rubriques>
    13.                         </ul>
    14.                         </B_sous_rubriques>
    15.                 </li>
    16.         </BOUCLE_rubriques>
    17.         </ul>

    Le problème, c’est que cela ne fait apparaître les sous-rubriques au survol de la souris que lorsque je suis dans une rubrique contenant des sous-rubriques. Et cela ne fonctionne que pour la rubrique dans laquelle je suis. (je ne suis pas certaine d’être très claire mais mon site tourne actuellement en local alors je ne peux pas le montrer)
    Je suppose que j’ai mal placé ul class="adxm adxmenu" ou que je dois le rajouter ailleurs mais comme je suis une bidouilleuse du dimanche, je suis larguée.
    Après des heures de tâtonnements, je ne serais pas contre un petit coup de main s’il vous plaît...

    • Le 17 mai 2011 à 20:13, par PieroWbmstr En réponse à : ADX Menu : un joli menu déroulant

      Salut,
      j’ai pas bien tout compris ...

      Si tu veux pouvoir ouvrir toutes les rubriques, quelle que soit la rubrique courante, il faut simplement retirer la boucle EXPOSE :

      1. <B_rubriques>
      2. <div class="menu rubriques">
      3.         <h2><:rubriques:></h2>
      4.         <ul class="adxm adxmenu">
      5.         <BOUCLE_rubriques(RUBRIQUES) {racine} {par num titre, titre}>
      6.                 <li>
      7.                         <a href="#URL_RUBRIQUE"[ class="(#EXPOSE)"]>[(#TITRE|couper{80})]</a>
      8.                         <B_sous_rubriques>
      9.                         <ul>
      10.                                 <BOUCLE_sous_rubriques(RUBRIQUES) {id_parent} {par num titre, titre}>
      11.                                         <li><a href="#URL_RUBRIQUE">[(#TITRE|couper{80})]</a><BOUCLE_re(BOUCLE_sous_rubriques)></BOUCLE_re>     </li>
      12.                                 </B_test_expose></BOUCLE_sous_rubriques>
      13.                         </ul>
      14.                         </B_sous_rubriques>
      15.                 </li>
      16.         </BOUCLE_rubriques>
      17.         </ul>
      18. </div>
      19. </B_rubriques>
    • Le 17 mai 2011 à 21:01, par Marie En réponse à : ADX Menu : un joli menu déroulant

      Merci ! Mon problème est résolu.

    Répondre à ce message

  • Le 18 février 2011 à 09:16, par PatG En réponse à : ADX Menu : un joli menu déroulant

    Bonjour,
    J’utilise ce plugin sur un site en « zpip » avec le plugin « menu ». L’utilisation est vraiment très pratique avec la classe « adxm adxmenu ».
    Cependant, le rendu visuel n’est pas celui obtenu avec la balise (qui marche très bien, mais il n’y a pas autant de possibilité qu’avec « menu ») et le menu déroulant devient très moche (largeur non constante) dans ie7.

    Auriez-vous une idée pour améliorer tout ça.
    le site « presque » fini.

    Merci d’avance.

    • Le 18 février 2011 à 13:15, par PieroWbmstr En réponse à : ADX Menu : un joli menu déroulant

      Salut Pat,

      on m’a déjà rapporté des problèmes d’affichage sur IE7 en effet. Je ne peux pas vérifier pour l’instant mais une piste de pourrait être de modifier le fichier « adxmenu_css_styles.css.html » de la façon suivante :

      1. # Ligne 26
      2. .adxmenu ul {
      3.         width: 11em;
      4. }
      5. # Ligne ajoutée (valeur à modifier)
      6. .adxmenu ul li, .adxmenu ul li a {
      7.         width: 11em;
      8. }

      Cela fixera au moins la largeur sur tous les navigateurs (normalement).

      Pas plus de piste, désolé

    • Le 21 février 2011 à 19:09, par PatG En réponse à : ADX Menu : un joli menu déroulant

      Bonjour,
      J’ai essayé (ce n’est pas mieux) et bien cherché.
      Finalement, le problème est"presque" le même sous Firefox ou IE. Ce sont les classes « menu-entree » et « menu-liste » des éléments « ul » et" li" qui changent le comportement de Adxmenu. Une fois enlevées de la page, le menu fonctionne comme la balise ;-).
      Comme je ne vais pas changer mes squelettes (ni les plugins « menus » et « zpip »), c’est un peu la panade.

      Si vous avez des idées pour ces classes, je suis preneur. Merci d’avance.

    • Le 21 février 2011 à 19:36, par PieroWbmstr En réponse à : ADX Menu : un joli menu déroulant

      OK, je vois le problème ...

      En haut du fichier « adxmenu_css.css.html » j’ai dû annuler effectivement certaines définitions CSS des ’ul’ et ’li’ propres à la distribution de SPIP (lignes 12 et suivantes). De mémoire, mes annulations s’appliquent aussi à un squelette Z (mais pas au thème bien entendu).

      Je pense qu’il faut que tu ajoutes certaines surcharges, pour annuler les comportements hérités, notamment ’width’ puisque c’est ce qui pose problème. A voir dans le CSS du thème Andreas que tu utilises quelles définitions sont prévues pour les classes ’menu-liste’ et ’menu-entree’, surtout ce qui est appliqué sur les ’ul’ et ’li’ (tu peux les annuler un par un pour voir ce qui cloche).

      A noter : pour moi sur Firefox (sous Mac OSX) je vois bien le « joli » menu (pas de largeur inconstante ...).

      Désolé de na pas pouvoir t’aider plus que ça ... Si tu trouves la solution, fais en un retour ici, je mettrai à jour mes annulations CSS.

      Courage, tout problème CSS a une solution CSS (même sur IE)
      ++ P.

    Répondre à ce message

Répondre à cet article

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 Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Transaction : créer des formulaires avec paiement en ligne

    13 mars 2011 – 32 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Transaction est une extension du plugin de création de formulaires Formidable pour concevoir des formulaires de paiement en ligne et les connecter aux principales API bancaires françaises. Présentation Transaction introduit 3 nouveaux types de (...)

  • Formulaire de contact avancé

    23 mars 2009 – 1041 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Un formulaire de contact configurable, avec de multiples options.

  • Squelette Multi-Saisons

    19 février 2009 – 226 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Un squelette qui change de couleurs suivant les saisons, un graphisme tout en rondeurs et de très nombreuses options.

  • JQuery Masonry

    15 août 2011 – <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Ce plugin est un portage pour Spip du plugin jQuery Masonry de David DeSandro : http://masonry.desandro.com/ Principe Ce plugin réorganise les blocs de votre page page d’après une grille (de manière verticale et horizontale) pour réduire au maximum (...)

  • Thélia

    26 juin 2007 – 835 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    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