Liste des contacts, ne pas afficher le formulaire dans la fiche

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

  • Liste des contacts, ne pas afficher le formulaire dans la fiche

    Bonjour,

    Sur un site (que je teste en local) où l'affichage des contacts doit se faire en simple liste, plutôt comme un annuaire, j'aimerais que d'une part le titre ne soit pas un lien vers la fiche, et si ce n'est pas possible, que la fiche exclue le formulaire de contact.
    Or, que le lien de menu pour l'affichage de la liste et que la fiche elle-même excluent le formulaire n'empêche pas celui-ci.
    Il me semble que c'est la première fois que je rencontre un tel comportement.
    Qu'ai-je pu oublier ?
    Si j'exclus le formulaire dans les paramètres généraux des contacts, le clic sur le titre du contact affiche une page vide, et je perds aussi celui-ci dans la page de contact personnalisé vers le gestionnaire du site.

    Faut-il que j'utilise une extension tierce ?

    Merci de vos conseils !

    PS : j'oubliais, les fiches des contacts en question sont indépendantes des membres
    Dernière édition par RobertG à 04/07/2024, 10h04
    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
    MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

  • #2
    Il est possible qu'il y ait eu un effet de cache, les fiches ne comportent plus de formulaire.

    Il reste que pour certains, le seul affichage en liste suffirait, et donc que le titre ne soit pas cliquable, et je ne trouve pas comment faire. Une surcharge de vue ?
    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
    MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

    Commentaire


    • #3
      le plus simple reste une substitution de la vue liste et tu enlèves le lien dans la substitution

      Commentaire


      • #4
        Merci, je viens de chercher, mais je ne trouve que "‎/templates/cassiopeia_cds_general/html/com_contact/category/default_items.php" où un lien est associé au titre, et si je modifie, cela affectera tout et pas seulement une catégorie. Le code affecte le lien à l'image et au titre :
        Code HTML:
         <th scope="row" class="list-title">
                 <a href="<?php echo Route::_(RouteHelper::getContactRoute($item->slug, $item->catid, $item->language)); ?>">
                      <?php if ($this->params->get('show_image_heading')) : ?>
        ​
        "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
        MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

        Commentaire


        • #5
          dite moi exactement ce que vous voulez et je vous fourni le fichier de substitution qui va bien

          Commentaire


          • #6
            Merci de cette proposition,

            Le fichier dont j'ai cité une partie du code est le seul où j'ai pu trouver un affichage de l'image et du titre correspondant, aucun layout ne permet d'impacter l'affichage et si je fais une substitution de ce fichier (j'utilise un template enfant), la modification sera prise en compte dans toutes les pages d'affichage de ces listes, faute de comprendre comment un autre layout pour cet affichage pourrait être créé puisque celui par défaut ne fait qu'embarquer ce fichier default_items, et que je ne vois pas comment son code pourrait changer celui du fichier embarqué.

            Il faudrait un autre style de template si j'ai besoin de conserver le lien vers la fiche elle-même dans certains affichages et pas dans d'autres.

            Pour résumer, ce que je cherche à faire est de n'afficher que la liste des contacts sans le lien vers la fiche sur le titre et l'image pour certaines catégories et conserver ce lien pour d'autres.

            Mais pour le moment, j'attends un avis de la personne qui gère le site avant d'aller plus loin.
            "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
            MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

            Commentaire


            • #7
              c'est possible en jouant sur les classes du menu, on peut imaginer mettre une classe sur l'élement de menu par exemple "nolink" et quand cette classe est mise le lien s'enlève, est ce que cette solution vous conviendrait?

              Commentaire


              • #8
                Je dois dire que j'ai essayé, sans succès, cette solution. Peut-être n'ai-je pas inséré les bonnes instructions dans user.css ?

                En utilisant un autre template enfant et en supprimant le lien dans default_items.php, j'obtiens ce que j'espérais.

                En revanche, je suis étonné que dans la liste il ne soit pas possible d'afficher l'adresse, ce qui m'a obligé à l'insérer dans cette substitution de default_items.php
                "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
                MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

                Commentaire


                • #9
                  je ne parle pas en css mais en php

                  Code PHP:
                  use Joomla\CMS\Factory;

                  $app   Factory::getApplication();
                  $menu     $app->getMenu()->getActive();
                  $anchor_css $menu->getParams()->get('menu-anchor_css');

                  if(
                  strpos($anchor_css,'nolink') !== false){
                      
                  $nolink true;
                  }
                  else{
                      
                  $nolink false;
                  }
                  ​ 
                  et après faire des conditions dans le code avec la variable $nolink;

                  Commentaire


                  • #10
                    Merci !

                    Si je comprends bien, ce serait dans le fichier default_items.php de substitution que ce code devrait être inséré, puis la variable utilisée pour conserver ou non le lien.
                    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
                    MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

                    Commentaire


                    • #11
                      Envoyé par RobertG Voir le message
                      Merci !

                      Si je comprends bien, ce serait dans le fichier default_items.php de substitution que ce code devrait être inséré, puis la variable utilisée pour conserver ou non le lien.
                      exactement !

                      voici un exemple

                      Code PHP:
                      <?php if($nolink​ == false):?>
                      <a href="<?php echo Route::_(RouteHelper::getContactRoute($item->slug$item->catid$item->language)); ?>">
                      <?php endif;?>
                                                      <?php if ($this->params->get('show_image_heading')) : ?>
                                                          <?php if ($item->image) : ?>
                                                              <?php echo LayoutHelper::render(
                                                                  
                      'joomla.html.image',
                                                                  [
                                                                      
                      'src'   => $item->image,
                                                                      
                      'alt'   => '',
                                                                      
                      'class' => 'contact-thumbnail img-thumbnail',
                                                                  ]
                                                              ); 
                      ?>
                                                          <?php endif; ?>
                                                      <?php endif; ?>
                                                      <?php echo $this->escape($item->name); ?>
                      <?php 
                      if($nolink​ == false):?>
                                                  </a>​
                      <?php endif;?>
                      RobertG aime ceci.

                      Commentaire


                      • #12
                        Merci beaucoup !
                        "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
                        MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

                        Commentaire

                        Annonce

                        Réduire
                        Aucune annonce pour le moment.

                        Partenaire de l'association

                        Réduire

                        Hébergeur Web PlanetHoster
                        Travaille ...
                        X