L'idée est de créer un mot-clé par type de pictogramme à positionner sur la carte et d'associer un logo à ce mot-clé. Le logo sera le pictogramme affiché sur la carte.
J'ai créé un groupe de mots-clés baptisé marker_icon.
Dans ce groupe, j'ai créé les mots-clé "hôtel", "restaurant", etc. en leur associant le picto qui va bien comme logo.
Ensuite, j'ai créé un article par référence à positionner sur la carte.
A chaque article, j'ai associé le mot-clé adéquat en fonction du type de référence.
Il ne reste plus qu'à indiquer à GIS d'aller chercher le picto du mot-clé pour l'affichage carte.
Dans plugin/gis/rss-gis.html, vers la fin du fichier tu as :
</div></description>[<dc:date>(#DATE|date_iso)</dc:date>]<BOUCLE_gis(GIS){id_article}><geo_lat>#LAT</geo_lat><geo_long>#LONX</geo_long></BOUCLE_gis><BOUCLE_mp3(DOCUMENTS){id_article}{mode=document}{extension=mp3}{0,1}><enclosure url="[(#URL_DOCUMENT|url_absolue)]" length="#TAILLE" type="audio/mpeg" /></BOUCLE_mp3><geo_icon><BOUCLE_tags1(MOTS){id_article}{type=marker_icon}>[#URL_SITE_SPIP/IMG/(#LOGO_MOT|fichier)]</BOUCLE_tags1></geo_icon><B_tags><dc:subject><BOUCLE_tags(MOTS){id_article}>#TITRE</BOUCLE_tags></dc:subject></B_tags>[<itunes:author>(#LESAUTEURS|supprimer_tags|texte_backend)</itunes:author>][<itunes:summary>(#DESCRIPTIF|couper{80})</itunes:summary>]<itunes:duration>00:00:00</itunes:duration><BOUCLE_img(DOCUMENTS){id_article}{mode=document}{extension==jpg|png|gif}{0,1}>[<itunes:image href="(#URL_DOCUMENT|url_absolue)" />]</BOUCLE_img>[<dc:language>(#LANG)</dc:language>][<dc:creator>(#LESAUTEURS|supprimer_tags|texte_backend)</dc:creator>]</item></BOUCLE_un_article>
Ce qui nous intéresse la-dedans, c'est :
<BOUCLE_tags1(MOTS){id_article}{type=marker_icon}>[#URL_SITE_SPIP/IMG/(#LOGO_MOT|fichier)]</BOUCLE_tags1></geo_icon>
Cette boucle va récupérer, dans le groupe marker_icon, le logo du mot-clé associé à l'article (le nom de fichier correspondant, en fait)
Le nom de fichier est au final inséré dans la balise XML <geo_icon> de rss-gis.html
**************************
Un dernier détail : il faut indiquer qqpart que si le pictogramme n'est pas défini par mot-clé, on prend le pictogramme par défaut de GoogleMaps. C'est dans plugin/gis/googlemaps_api/js/geomap.js que ça se passe.
1. Après la ligne 59, ajoute :
var icon = $("geo_icon",xmlItem).text();
c'est du jQuery qui récupère la valeur de la balise geo_icon dans le fichier XML (si elle existe)
2. Ligne 67 remplace la ligne
icono_categoria.image = URLbase + "/plugins/gis/img_pack/correxir.png";
par :
icono_categoria.image = (icon != "" ? icon : URLbase + "/plugins/gis/img_pack/correxir.png");
Avec ça, ça doit marcher.
Bon courage.
Christian