Intégration de la cartographie avec GIS dans SoyezCreateurs

Le but de cet article est de faire apparaître une carte que sur une rubrique et les articles appartenant à la branche de cette rubrique. Cette rubrique est choisie dans la configuration du plugin.

Sur la carte apparaissant sur la rubrique on verra apparaître les articles via leurs coordonnées, et sur les cartes on ne verra apparaître que l’article via ses coordonnées.

Installation et configuration de GIS

Tout d’abord il faut installer GIS et Google Maps API. Maintenant il faut le configurer : il vous suffit de choisir quelle rubrique ou vous souhaitez que GIS soit utilisable. Pour cela ils vous suffit de choisir une rubrique dans le tableau si dessous :

Tableau de configuration de GIS
Le tableau de configuration de GIS, qui vous permet de choisir une configuration adaptée à vos besoins (choix de rubriques ou le plugin est actif).

Rappel : pour pouvoir configurer GIS il vous faut une clef de validation Google Map que l’on obtient en suivant les étapes d’écrite dans Plugin Gis escoitar.

Une fois le plugin configuré et la rubrique choisie il ne vous reste plus qu’à choisir les coordonnées de vos articles.

N.B [1] : Pour que la carte apparaisse sur la rubrique il faut obligatoirement lui donner des coordonnées et un zoom. Et si dans votre branche vous avez d’autres sous-rubriques et que vous voulez qu’une carte apparaisse aussi vous devez aussi leurs donner des coordonnées et un zoom.

Le choix des coordonnées pour une rubrique dans la partie privée :

Choix des coordonnées pour une rubrique dans l’espace privé
Le choix des coordonnées dans l’espace privé une fois le point et le zoom choisis pensez à cliquer sur Actualiser pour valider les changements.

Le choix des coordonnées pour un article dans la partie privée :

Choix des coordonnées pour un article dans l’espace privé
Le choix des coordonnées pour un article et le même principe que pour une rubrique.

Pour cela il vous suffit de modifier vos page : rubrique et article dans votre squelette Soyez Créateurs. En y ajoutant ce code :

  • Pour la page rubrique :
[<div id="carto">
(#PLUGIN{GIS}|=={1}|oui)#INCLURE{fond=noisettes/rubriques/carto,id_rubrique}
</div>]

Cela permet de vérifier si le plugin GIS est présent, et si oui on appelle (inclut) la page carto.html qui se trouve dans noisettes/rubriques/ et qui elle appellera le modèle gis dans des conditions biens précises (nous voulons que seule la rubrique choisit dans gis affiche la carte avec tous les article appartenant à elle même ou à une de ses sous-rubriques).

    • La page carto.html pour les rubriques :
[(#REM) Page de modèle pour inclure la carte de Google Maps dans le squelette Soyez Créateurs. Pour afficher les points de tous les articles de la branche, il faut mettre une carte avec le facteur de zoom par défaut sur la rubrique qui doit afficher tous les points. ]
<BOUCLE_AppelCarte(GIS){id_rubrique}{0,1}>
	[(#MODELE{carte_gis}{id_rubrique}{type=carte}{recursive=1})]
</BOUCLE_AppelCarte>
  • Pour la page article :
[<div id="carto">
(#PLUGIN{GIS}|=={1}|oui)#INCLURE{fond=noisettes/articles/carto,id_article}
</div>]

Le principe est le même mais c’est le code qui change, et la page carto.html devra ce trouver dans noisettes/articles.

    • La page carto.html pour les articles :
[(#REM) Page de modèle pour inclure la carte de Google Maps dans le squelette Soyez Createurs ]
<BOUCLE_CartoPresente(GIS){id_article}{0,1}>
	[(#MODELE{carte_gis}{id_article}{type=carte})]
</BOUCLE_CartoPresente>

Il faut noter que dans le modèle on passe des instructions en dur comme type=carte vous pouvez retrouver toutes les instructions et leurs valeurs qui sont liées au plugins sur l’article gis escoitar.

Petite explication du code

Dans les pages noisettes/rubriques/carto.html et noisettes/articles/carto.html on voit apparaître ceci :

  • Dans noisettes/rubriques/carto.html :

La boucle GIS permet d’afficher la carte que sur les rubriques qui sont enregistrées dans la table gis et de ne pas afficher la carte sur les rubriques qui n’ont pas explicitement une carte attachée à la rubrique (ne tient absolument pas compte du fait qu’il y ait ou non des articles avec carte dans la branche).

  • Dans noisettes/articles/carto.html :

La boucle GIS ne permet d’afficher la carte que sur les articles qui se trouvent dans la table gis.

Résultat

Une fois ces modifications accomplies vous pourrait obtenir ceci :

  • Pour la rubrique de votre site :
La partie publique du site
Voila ce que l’on voit apparaitre sur une rubrique du site une fois toutes les modifications apportées.
  • Pour les articles de votre site :
La partie publique du site pour un article
Ce que l’on peut voir sur un article du site.

Notes

[1Nota Bene

Discussion

Aucune discussion

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom