Override helpers de Adsmanager

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

  • Override helpers de Adsmanager

    Bonjour à tous ! Je souhaite modifier l'ordre des liens de Adsmanager. Cela se trouve dans le fichier general.php qui se trouve dans le dossier helpers. Comme je ne souhaite pas perdre cette modification en cas de mise à jour, j'ai créé un dossier MONSITE/templates/Mon_template/html/com_adsmanager/helpers dans lequel j'ai mis une copie du general.php, sur lequel j'ai fait ma modif. Mais elle n'est pas prise en compte. N'y a-t-il que les éléments du dossiers views qui peuvent être overridés ? Merci d'avance.

  • #2
    Re : Override helpers de Adsmanager

    Bonjour,
    Tu ne peux pas réécrire le helper...
    Tu ne peux le faire qu'avec les vues, avec les fichiers default.php, pour autant que ton composant soit créer selon l'architecture MVC.
    Il faut copier le fichier à modifier dans templates/NomTonTemplate/html/com_NomComposant/NomVue/default.php
    Un peu de pub: http://www.aplomb.ch

    Commentaire


    • #3
      Re : Override helpers de Adsmanager

      Je te remercie pour ta réponse rapide. Le hic, c'est que je n'ai trouvé que dans ce fichier-là les liens du menu de Adsmanager. Tant pis.
      J'essaie aussi d'overrider adsmanager.css pour personnaliser les catégories. Mais je m'arrache les cheveux depuis hier car cela ne marche pas.
      J'ai donc copié le fichier adsmanager.css dans montemplate/html/com_adsmanager/css.
      J'ai modifié la barre de menu pour la mettre sur un fond blanc, ok.
      L'outil de développeur de Chrome me dit que la balise des catégories est h2.adsmanager_main_cat.
      Donc dans le css overridé, j'ajoute adsmanager_main_cat h2, adsmanager_main_cat h2 a, adsmanager_main_cat h2 a:link et je mets mes réglages.
      Cela ne change rien, c'est toujours le css du template qui prévaut ! Mes ajouts n'apparaissent pas.

      Qu'est-ce que je fais comme erreur pas juste ???!!!

      Commentaire


      • #4
        Re : Override helpers de Adsmanager

        Envoyé par louisseize Voir le message
        J'ai donc copié le fichier adsmanager.css dans montemplate/html/com_adsmanager/css.
        Re,
        C'est bien de le recopier dans template css mais:
        - Le fichier originale fait toujours son effet et est sûrement appelé après ton fichier personnalisé.
        - As-tu modifié ton template pour appeler ton fichier personnalisé ?

        Tour ça pour te dire qu'il n'y a pas de réécriture pour les css, si tu veux le faire, il faut le faire à la main.

        Bon courage
        Un peu de pub: http://www.aplomb.ch

        Commentaire


        • #5
          Re : Override helpers de Adsmanager

          Envoyé par louisseize Voir le message
          Je te remercie pour ta réponse rapide. Le hic, c'est que je n'ai trouvé que dans ce fichier-là les liens du menu de Adsmanager.
          Re Re
          Il te faut d'abord connaitre la vue utilisée.
          Pour ça regarde dans ton lien de menu l'adresse générée: index.php?option=com_tonComposant|view=NomDeLaVue
          Grâce à cette adresse tu va savoir où retrouver ton fichier à modifier: components/com_tonComposant/views/nomVue/templ/default.php. A recopier au chemin: templates/NomTonTemplate/html/com_NomComposant/NomVue/default.php et modifier.
          Un peu de pub: http://www.aplomb.ch

          Commentaire


          • #6
            Re : Override helpers de Adsmanager

            rere,
            Merci, mais je pensais que c'était le principe de l'override : on crée un répertoire correspondant dans le dossier du template, et Joomla va d'abord voir là. D'ailleurs, le fond blanc, présent dans le fichier modifié, est bien là. Si je supprime le adsmanger.css du dossier, le fond blanc disparaît. Sans pour autant avoir modifié le template original pour appeler le fichier personnalisé.

            Je veux bien faire à la main, mais déjà faudrait que cela fonctionne ! Le code me dit que la balise des catégories est "<h2 class="adsmanager_main_cat">, donc j'ai ajouté
            Code:
            /* override titre catégories*/
            
            .adsmanager_main_cat h2 {
               text-shadow: none;
               font-size: 14px;
            font-weight: normal;
            }
            .adsmanager_main_cat h2 a,.adsmanager_main_cat h2 a:link,.adsmanager_main_cat h2 a:hover {
               text-shadow: none;   
            }
            
            /*fin override*/
            Que ce soit dans le fichier overridé, ou même rajouté dans le fichier template.css de mon template, il s'en fout complètement !
            Pourtant, dans le view, il est bien spécifié :
            Code:
            	function recurseCategories( $id, $level, &$children) {
            		
            		if (@$children[$id]) {
            			$i=0;$first=true;
            			foreach ($children[$id] as $row) {
            				$link = TRoute::_("index.php?option=com_adsmanager&view=list&catid=".$row->id);
            				if ($level == 0)
            				{
            					if ($i==0)
            					{
            						echo '<tr align="center">';
            					}
            					?>
            					<td width="50%">
            					<table width="100%" border="0" cellspacing="0" cellpadding="0">
            					<tr> 
            					  <td rowspan="2"><div align="center">
            					  <?php
            							echo '<a href="'.$link.'"><img class="imgcat" src="'.TTools::getCatImageUrl($row->id).'" alt="'.htmlspecialchars($row->name).'" /></a>';
            					  ?>
            					  </div></td>
            					  <td> 
            						<h2 class="adsmanager_main_cat"><a href="<?php echo $link; ?>"  ><?php echo htmlspecialchars($row->name)." (".$row->num_ads.")"; ?></a></h2>
            					  </td>
            					</tr>
            					<tr>
            					<td> 
            					<h3 class="adsmanager_sub_cat">
            					<?php
            				}
            Comme le fond blanc sous le menu fonctionne, je suppose que je fais une erreur pour les catégories.
            Mais impossible de trouver laquelle !!!
            Ca m'énerve !! ;-)

            Commentaire


            • #7
              Re : Override helpers de Adsmanager

              Je continue ma réflexion ... Je constate que si je crée dans le css overridé une ligne .adsmanager_main_cat avec un text-decoration avec underline, ça fonctionne. Donc le fichier overridé est bien lu.
              Donc j'en déduis que le h2 défini dans le template.css prend le pas sur mon h2 .adsmanager_main_cat

              Alors ? Faut-il contaténer les deux dans le css overridé ? Du style h2.postcontent adsmanager_main_cat ??

              Commentaire


              • #8
                Re : Override helpers de Adsmanager

                Envoyé par louisseize Voir le message
                Alors ? Faut-il contaténer les deux dans le css overridé ? Du style h2.postcontent adsmanager_main_cat ??
                L'avantage est que de cette manière, on gère l'ordre d'apparition des différents sélecteurs et charge un fichier de moins...

                Le CSS override n'est pas natif dans joomla, ça doit être ton composant Adsmanager qui le permet... A ma connaissance...
                Un peu de pub: http://www.aplomb.ch

                Commentaire


                • #9
                  Re : Override helpers de Adsmanager

                  merci de me répondre, al1pb.
                  Oui, Adsmanager le permet. Mais je n'arrive pas à paramétrer le style des liens sauf à passer par le style global des liens paramétrés dans ma feuille de style.
                  Exemple : le pathway de la liste d'annonces. Il est dans une div adsmanager_pathway, que je retrouve dans la feuille de style adsmanager.css
                  Mais si je rajoute des styles pour les liens comme .adsmanager_pathway a:hover, que ce soit dans la feuille de stylé overridée ou dans celle du composant, ce n'est pas pris en compte. Idem pour les h2, h3 puisqu'ils sont déjà pré-paramétrés en debut de la feuille de style. Du coup, impossible de styler les liens du pathway différemment de ceux des autres, ou les titres.
                  Je dois faire une erreur quelque part, mais laquelle ...

                  Commentaire

                  Annonce

                  Réduire
                  Aucune annonce pour le moment.

                  Partenaire de l'association

                  Réduire

                  Hébergeur Web PlanetHoster
                  Travaille ...
                  X