We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 23050
    • 1,842 Posts
    Bonjour,

    Je suis sur le point de mettre en ligne un site, contenant, entre autres un annuaire de professionnels basés dans la France entière. J’aurai souhaité pouvoir naviguer dans mon annuaire via une carte de France, dans laquelle chaque département est cliquable. Sur chaque département, un point affiche la position du professionnel et un clic sur ce point permet de voir sa fiche descriptive.

    Je suis partie sur la base suivante mais je me demande s’il n’y a pas mieux à faire :

    1- J’ai un dossier "pros" contenant 96 sous-dossiers, représentant les 96 départements (je ne compte pas les 4 dpts d’Outre-Mer). Dans ces 96 sous-dossiers, je stocke un document = un professionnel

    2- Sur le front, quand j’affiche la page "pro", la carte de France apparaît, avec les 96 départements cliquables (à condition qu’un pro soit référencé dans le département). Le code HTML de la carte de France (avec la balise map) est insérée dans le template du dossier pro (heureusement, ce site n’est pas pour un client, sinon bonjour la mise à jour grin)
    3- Une fois le département cliqué, on arrive sur une nouvelle carte (du département) avec affichage de points pour indiquer l’emplacement d’un pro. L’affichage de ce point serait géré par 2 tv de la fiche pro (x et y) et placé automatiquement grâce aux css et un position:absolute. Chaque point est cliquable pour voir la fiche du pro.

    2 éléments bloquants cependant :

    a- quid de 2 pros qui seraient affichés sur le même point ?
    b- mise à jour du système un peu laborieuse ? :/

    Qu’en pensez-vous ? Avez-vous déjà eu une problématique similaire ?

    Je sens que vous allez me dire que je pousse un peu loin les limites de notre cms préféré, mais j’adore les défis ! grin
      • 30897
      • 311 Posts
      Salut,

      Je dois également mettre en place un outil similaire sur un site et je me suis posé pas mal de questions quant à la mise en place de cette "application". J’avais tout d’abord pensé à utiliser Google MyMaps et le snippet correspondant mais je n’avais pas plus cresé le sujet.
      J’ai ensuite décidé de faire une carte simple (plus ou moins statique) avec des renvois vers des pages un peu comme toi.

      Ton idée me parait logique même si au niveau de la maintenance, ça risque d’être lourd même pour toi... à voir...

      Est-ce qu’un gestion par TV n’aurait pas été plus appropriée ?

      @+
        TylerD - In MODx we trust
        [Derni
        • 23050
        • 1,842 Posts
        Je vais regarder la solution de Google Maps smiley A voir si je peux faire ce que je souhaite et placer autant d’éléments que je souhaite.

        Qu’entends-tu par une gestion par tv ? Qu’est ce que gère dans les tv ?

        Merci pour tes pistes wink
          • 30897
          • 311 Posts
          Et bien, ce n’est qu’un idée mais au lieu de créer 96 répertoires, peut être en créer un et gérer les départements dans des TV, un peu comme si tu voulais afficher un nuage de liens, après tu peux peut être faire des regroupement plus facilement...

          Je ne dis pas que c’est une meilleure solution mais juste une proposition... shocked
            TylerD - In MODx we trust
            [Derni
            • 23050
            • 1,842 Posts
            Ah ok, oui j’y ai pensé aussi... sauf que concrètement, je ne sais pas comment gérer la chose.

            Quand je clique sur annuaire : la carte de France s’affiche. Quand je clique sur un département, j’affiche quelle page ? Un appel Ditto avec un filtre sur le département mais je ne sais pas comment faire ^^
              • 30897
              • 311 Posts
              Si tu gères ça avec des TV, lorsque tu as ta page avec la carte de France, tu renvois vers une seconde page qui prend par exemple un paramètre d’URL (dept=69 pour le Rhône) et tu passe dans une TV "69" pour l’appel à Ditto... surement pas adapté à ce que tu veux faire en fait.

              Donc la première solution est la meilleure à mon avis, car en effet tu vas t’embrouiller avec les départements, surtout si tu as besoin d’une page par département.

              Tu gère comment l’affichage de ta carte en XHTML/CSS ? tu arrives à obtenir un résultat satisfaisant au niveau de l’accessibilité ?

                TylerD - In MODx we trust
                [Derni
                • 23050
                • 1,842 Posts
                Quote from: TylerD at Apr 06, 2007, 08:09 AM

                Tu gère comment l’affichage de ta carte en XHTML/CSS ? tu arrives à obtenir un résultat satisfaisant au niveau de l’accessibilité ?

                Il faut que je me replonge dedans mais l’année dernière, j’avais réussi à faire une carte à peu près similaire (hors MODx), tout en statique et l’accessibilité était pas mal... mais je dois ressortir mes cahiers, je n’utilise pas la balise map tous les jours :p Je ferai un topo si je garde cette solution wink
                  • 16732
                  • 592 Posts
                  Quote from: Perrine at Apr 06, 2007, 08:03 AM

                  Quand je clique sur annuaire : la carte de France s’affiche. Quand je clique sur un département, j’affiche quelle page ? Un appel Ditto avec un filtre sur le département mais je ne sais pas comment faire ^^

                  Oui je pense aussi que c’est a meilleure idée (couplé à une tv Département) si tu n’a qu’une carte de France qui, en cliquant sur les départements, renvoie sur un appel Ditto (filtré sur la tv Département) pour afficher un listing des pros.

                  Le problème en fait c’est ta seconde carte des départements qui va être assez compliqué à automatiser, voir même à mettre en place, car je présume que les positionnements x/y de tes points vont être fait à la mano, par test/erreur...
                    • 23050
                    • 1,842 Posts
                    Quote from: laurentc at Apr 06, 2007, 09:00 AM

                    Le problème en fait c’est ta seconde carte des départements qui va être assez compliqué à automatiser, voir même à mettre en place, car je présume que les positionnements x/y de tes points vont être fait à la mano, par test/erreur...

                    Tout à fait ! De toute façon, pour le placement des points, je n’ai pas le choix je pense. A moins de minimiser les manips en insérant non pas les pros mais la ville des pros... ainsi, au lieu de 10 points affichés pour 10 pros, je n’ai que 2 points par ex pour peu que ces 10 pros soient dans 2 villes différentes... à tester donc.

                    J’avais omis ce détail, je pense que mon site va avoir quelque retard ^^

                    Ou alors, plus simple : je ne fais que la carte de France et lorsque l’on rentre dans un département, on a une liste... éventuellement triée par ville. C’est plus simple et j’ai pas de points à placer. grin
                      • 25420
                      • 74 Posts
                      je vais aussi peut-etre devoir bosser sur un projet similaire.

                      Apres quelques tests, voici comment je pense faire:

                      un document par bureau (moi c’est pour afficher les bureaux d’une entreprise dans un pays).
                      Pour chaque bureau, je vais enregistrer l’adresse complete dans une TV.

                      Ensuite, sur la page ou j’affiche ma carte, je parcours mes docs en recuperant les adresses, et j’effectue une query sur Google Maps pour avoir les coordonnees:
                      http://maps.google.com/maps/geo?q=Parc+du+village,+Beauvezer,+France&output=xml&key=abcde

                      J’ai teste avec quelques adresses, ca marche bien. Au pire, si l’adresse nest pas trouvee (code erreur 602), on peut relancer la requete en passant le code postal en param, au lieu de l’adresse.

                      Une fois qu’on a les coordonnees, il faut creer le marquer et la bulle texte qui va avec : http://www.google.com/apis/maps/documentation/index.html#Display_Info_Windows_Above_Markers pour le bout de code

                      Ca risque d’etre assez lourd car je vais avoir pas mal de requetes vers Google Maps a effectuer pour recuperer les coordonnees. Donc je pense que je separerai ce traitement et mettrai un systeme de cache (genre je cree un XML sur mon serveur qui contient toutes les infos de mes points). Et peut-etre que le bon endroit pour gerer ca c’est de creer un plugin, y mettre le code php qui s’occupe de generer l’XML et de configurer le plugin sur "OnCacheUpdate".

                      Par contre c’est super souple pour le client qui peut gerer lui meme ces adresses. Et le marqueur est du coup super precis aussi..