Géolocaliser les utilisateurs Drupal

Drupal Ajouter un commentaire

drupalAprès avoir galéré quelques heures pour trouver comment géolocaliser les utilisateurs de Drupal. Voici mon retour d’expérience.

Installation des modules Gmap et Location.

  • Paramétrage de votre API Gmap : /admin/settings/gmap
  • Configuration des utilisateurs, tout en bas « Emplacements des utilisateurs » : /admin/user/settings

Et c’est fini ! Le reste n’est qu’une affaire de thème.

La manipulation est très simple, mais le temps de trouver qu’il fallait aller dans la Configuration des utilisateurs m’a pris facilement 2h. Donc soit je suis fatigué, soit ce n’est pas logique.
En effet, ma première démarche fut d’activer le module Profile et de chercher à rajouter un champs de type Localisation.
Le reste ne fut qu’une errance sans fin sur Google.

S’il y a bien une chose que l’on peut reprocher à Drupal, c’est une ergonomie général complètement hétérogène.
Le soucis des modules, c’est que chaque développeur y va comme il le souhaite. On arrive vite à une assiette de spaghetti.


Vous avez aimé l'article ? Alors vous aimerez surement :
Mots-clefs :, , , ,

7 réponses to “Géolocaliser les utilisateurs Drupal”

  1. Yacko Says:

    Salut !

    Je te conseil de ne pas utiliser « Emplacements des utilisateurs », mais plutôt cck_location, qui couplé avec content profile et views te permet une bien plus grande flexibilité.

    Il y a un élément à maitriser : les macros.
    Exemple : [gmap |width=100% |height=400px |behavior=+autozoom]
    On peut ainsi définir la taille de la carte, et la petite astuce ‘autozoom’ qui Zoom automatiquement sur la carte pour visualiser tous les marqueurs.

    Ensuite il y a des choses très intéressantes à faire avec les views, genre la liste des personnes habitants dans le même ville qu’un utilisateur, ou mieux : toutes les personnes à 10 km à la ronde…

    On peut le coupler aussi avec le module Organics Groups pour affiche la carte de tous les utilisateurs d’un groupe donné.

    Ou encore faire une carte de tous les events dans une période donnée…

    Enfin comme toujours avec Drupal, on peut vraiment (presque) tout faire !!

  2. Thomas Tourlourat Says:

    Le soucis, c’est que je n’aime pas la logique de transformer un utilisateur en nœud.
    Il s’agit pourtant d’une donnée je suis d’accord. Mais pourquoi faire, dans quel but ?

    Tu dis utiliser View pour pouvoir afficher les utilisateurs, et même les personnes habitant à 10km d’un point fixe.
    Mais avec la solution ci-dessus, on peut aussi réaliser cela.
    Au niveau de la configuration d’un vue, il existe « user_location_table » qui est une vue non activée. Les paramètres de proximité fonctionnent aussi.

    Je n’ai pas assez de recule pour affirmer qu’il s’agit de la meilleur solution, d’ailleurs la documentation sur le Internet tendrai à prouver le contraire. Mais, cette documentation n’est pas récente, et pas suffisamment argumenté pour me convaincre.

    Je reste malgré tout à l’écoute ;)

  3. Yacko Says:

    Dans drupal 7 (sortie prévue dans deux mois environ) tout sera node et CCK.

    Le profil sera un node et les champs du profil seront tous des CCK.

    J’essaye au mieux de suivre les recommandations de Drupal et les évolutions à venir.

    Deux pages intéressantes :
    http://planete.drupalfr.org/node/616
    http://www.ineation.com/drupal/drupal-7-rumeurs-et-previsions

  4. Thomas Tourlourat Says:

    Intéressant le premier lien.

    « Comme vous le voyez sur la copie d’écran, CCKFieldAPI ne se limite plus aux seuls contenus, ou plutôt aux seuls noeuds, mais s’étends maintenant au profile de l’utilisateur. On commence ici à apercevoir le mirage du fameux DataAPI dont on cause réguliérement, offrant enfin l’unification entre noeuds, utilisateurs, taxonomie et commentaires. »

    Drupal 7 offrira en effet une meilleur transversalité entre les quatre grands types de donnée composant Drupal : Noeud, user…
    Mais les utilisateurs ne deviendront pas pour autant des nœuds.

    Je ne cherche pas à aller contre la vague, ni à faire mon mec chiant. Mais comme toi, à comprendre et à faire au mieux.
    Utiliser les utilisateurs comme des noeuds doit très certainement avoir des avantages; mais j’ignore ces avantages.

    PS : Il est d’ailleurs à noter, que le module Profile perdra son sens avec CCKFieldAPI lorsque celui-ci s’appliquera aussi aux utilisateurs.

  5. Yacko Says:

    C’est juste le profile rattaché à un utilisateur qui est utilisé comme un noeud, et non pas l’utilisateur lui même.

    Cela me permet par exemple d’utiliser des conditional fields dans le profil. En fonction des cas j’y utilise aussi du composite ou panels.

  6. Formatix Says:

    Va vraiment falloir que je me mette a Drupal. Peut etre dans un prochain screencast.

  7. Malin94 Says:

    Bon allez zou, je suis motivé pour me replonger dans Drupal.
    Depuis le temps que je le dis, c’est vraiment l’occasion cette fois.

Ajouter une réponse

Designed by NattyWP Wordpress Themes.
Images by desEXign.