Besoin coup de pouce php-> texte affiché SSi module chargé

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] Besoin coup de pouce php-> texte affiché SSi module chargé

    Bonjour,
    Je dois ajouter un module et une position à mon template. Jusque-là, je sais faire.
    Mais je voudrais qu'un texte du bloc conteneur s'affiche si et seulement si le module est chargé.

    Explication par l'exemple:
    Dans mon template, j'ai ajouté cette position pour créer un indexAlpha à partir d'un module (et Menu associé).
    <div id="sommaire" class="sommaire">
    <jdoc:include type="modules" name="indexAlpha" style="xhtml" />
    </div>

    Tout fonctionne parfaitement: le module s'affiche à la demande sur les rubriques où je le souhaite.

    Par contre, j'aimerais mettre un texte "Index Alphabétique" en présentation ici:
    <div id="sommaire" class="sommaire">Index Alphabétique
    <jdoc:include type="modules" name="indexAlpha" style="xhtml" />
    </div>

    mais que Index Alphabétique ne s'affiche QUE si le module est chargé dans la page. En l'écrivant en dur, évidemment il s'affiche partout puisque que le conteneur DIV#sommaire est dans le template.

    Je me doute qu'il faut ajouter une condition php if, mais je sais pas faire. Qui peut m'aider?

    J'ai une autre solution en passant par des paramétrages compliqués et longs: ce n'est pas optimisé.

    Merci aux preux chevaliers développeurs et débuggeurs

  • #2
    Re : Besoin coup de pouce php-&gt; texte affiché SSi module chargé

    Je vais tâcher d'être preux; du moins de quérir à ton aide.

    Est-il possible d'envisager l'utilisation du module Metamod (http://extensions.joomla.org/extensi...anagement/3391). Ce module permet, entre autre, de regrouper deux ou plusieurs modules ensemble.

    Ainsi, tu aurais un module "HTML personalisé" où tu mettrais "Index alphabétique" et tu aurais ton module qui affiche l'index. En publiant ces deux modules dans une position imaginaire "_abstract" du template (=une position qui est listée dans templateDetails.xml mais absente de index.php); tu vas pouvoir afficher un module MetaMod qui serait paramétré pour afficher tous les modules de cette position _abstract. Les deux modules seront fusionnés et, à l'écran, tu auras l'impression de n'en avoir qu'un.

    Sinon, si tu restes dans la logique qui est tienne, je pense qu'un JModuleHelper::isEnabled() pourrait t'être fort utile : http://docs.joomla.org/JModuleHelper/isEnabled

    Suis-je un preux chevalier ? Est-ce que ma journée va être réussie ?
    Christophe (cavo789)
    Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
    Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

    Commentaire


    • #3
      Re : Besoin coup de pouce php-&gt; texte affiché SSi module chargé

      Avec
      <?php if($this->countModules('indexAlpha')) { ?>

      <div id="sommaire" class="sommaire">
      <jdoc:include type="modules" name="indexAlpha" style="xhtml" />
      </div>

      <?php } ?>
      ca devrait le faire!

      Commentaire


      • #4
        Re : Besoin coup de pouce php-&gt; texte affiché SSi module chargé

        Merci à tous les deux pour votre aide. Rien que ça vaut le titre de preux chevalier .
        Chez moi, pas obligé de terrasser le dragon pour le garder :-)

        Pour Kursus ->
        copie-colle direct de ton code dans le fichier default.php de mon template: n'a pas marché. Je me retrouve avec une page blanche. (Template JA-T3). Je ne vois pas de endif: essayé d'en ajouté un en m'inspirant des autres lignes de mon fichier, mais ça marche pas.

        Pour cavo789 ->
        Bonne idée; j'ai testé un peu, mais je parviens au même résultat uniquement en jouant sur les paramétrages et le loadposition. Je préfère éviter l'ajout de modules ou d'extensions tiers pour un "petit rendement" - Ici juste une phrase- car ça pénalise pour de futures mises-à-jour de versions.
        Néanmoins j'y ai gagné de connaître ce module très intéressant, qui me donnera des idées pour autre chose.

        Merci à vous deux en tout les cas

        Commentaire


        • #5
          Re : Besoin coup de pouce php-&gt; texte affiché SSi module chargé

          Ma solution pour créer un index alphabétique sans extension ni module tiers, visible à la fois dans les listes de catégories et les articles.
          1- J'ajoute ma position "positionIndex" à mon template (déclaration de position + fichier article/default.php)
          2- Je crée mon menu avec:
          - un lien qui pointe vers un article index-de-mon-site (pour l'url et pour afficher le module Index dès le début de la rubrique)
          - un séparateur "Index Alphabétique"
          - les liens index: A / B/ C etc -> chaque lien = blog de catégorie, ou liste articles d'une catégorie, pour afficher la liste des définitions

          3- je crée un module avec la position "positionIndex":
          - dans les pages articles de l'index, il s'affiche en bonne place
          - dans les listes de catégories, j'ajoute {loadposition positionIndex} dans la description de la catégorie: permet d'afficher le dit module en liste de catégorie (impossible sinon). Bien sûr il faudra activer l'affichage de la description des catégories

          4- je finalise l'affichage graphique avec un peu de css

          Remarque: l'article est indispensable pour initialiser l'index à une adresse /monsite/monindex au lieu de monsite/monindex/a

          Voili-voiloù. Un peu d'huile de coude, mais ça marche nickel. Peut-être qu'un jour je serais assez forte en php pour éviter l'huile de coude
          Dernière édition par crapouille63 à 13/03/2012, 15h14

          Commentaire


          • #6
            Re : Besoin coup de pouce php-&gt; texte affiché SSi module chargé

            Envoyé par crapouille63 Voir le message
            Peut-être qu'un jour je serais assez forte en php pour éviter l'huile de coude
            Oui mais ce jour-là tu n'auras plus besoin de preux chevalier ;{ Faudra que l'on se recycle

            Content de voir que tu as trouvé une solution.
            Christophe (cavo789)
            Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
            Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

            Commentaire


            • #7
              Re : Besoin coup de pouce php-&gt; texte affiché SSi module chargé

              Envoyé par crapouille63 Voir le message
              Pour Kursus ->
              copie-colle direct de ton code dans le fichier default.php de mon template: n'a pas marché. Je me retrouve avec une page blanche. (Template JA-T3). Je ne vois pas de endif: essayé d'en ajouté un en m'inspirant des autres lignes de mon fichier, mais ça marche pas.
              Exact c'est un code pour Joomla 1.5, désolé. Voici un exemple pour 2.5 (qui évite pas mal de soucis) :

              <?php if ($this->countModules( 'user1' )) : ?>
              <div class="user1">
              <jdoc:include type="modules" name="user1" style="rounded" />
              </div>
              <?php endif; ?>
              Bon courage!

              Commentaire


              • #8
                Re : Besoin coup de pouce php-&gt; texte affiché SSi module chargé

                Non désolée kursus, j'ai testé la version 2.5, marche pas non plus. J'ai omis de préciser que j'étais en 1.7, désolée

                Commentaire

                Annonce

                Réduire
                Aucune annonce pour le moment.

                Partenaire de l'association

                Réduire

                Hébergeur Web PlanetHoster
                Travaille ...
                X