Projet

Général

Profil

Map » Historique » Version 2

Julien Enselme, 05/04/2013 19:13
Suppression catégorie (reste mediawiki)

1 1 Julien Enselme
Par [[Utilisateur:LiNux ^^=!|LiNux ^^=!]], en suivant ce tutoriel [http://mapbox.com/put-your-content-map-25-minutes-geo-enabled-blog-using-drupal-mapbox-and-openlayers]<br \>
2
http://assos.centrale-marseille.fr/expat/map
3
4
{{toc}}
5
6
!https://forge.centrale-marseille.fr/attachments/download/8/Nivexpat.png!
7
8
h1. Modules à activer
9
10
* Chaos Tools
11
* Openlayers, OpenLayers UI, OpenLayers Views
12
* Geo taxonomy
13
* Views
14
15
h1. Associer vocabulaire et emplacement géographique
16
17
Les trucs entre parenthèse correspondent à des actions déjà effectuées sur le site avant d'implémenter cette méthode
18
* (créer un vocabulaire de taxonomie correspondant aux lieux ; l'associer au contenu de type blog)
19
* cocher "emplacement" dans les "paramètres" du vocabulaire
20
* (créer des termes de ce vocabulaire)
21
* pour chaque terme créé, dans "Emplacement", cliquer sur la carte à l'endroit auquel il correspond (ou entrer ses coordonées GPS)
22
23
h1. Création du "fond de carte"
24
25
* Dans administrer > construction du site > openlayers, onglet presets, puis onglet ajouter.
26
* Rentrer un nom (ici "blog_map"), un titre (ici "La carte des articles") et une description.
27
* Choisir la largeur et la hauteur de la carte
28
* L'onglet du dessous ("Center & Bounds") sert à définir le centre de la carte et le zoom par défaut ; il permet donc de choisir quelle région du monde on souhaite afficher.
29
* L'onglet du dessous ("behaviors") sera utilisé plus tard.
30
* Dans le dernier onglet ("Layers & Styles"), choisir le layers ( en gros, c'est l'image de fond). Je recommande les OSM (car OpenStreetMap, c'est bien, car c'est libre ^^). Cocher les deux cases pour le fond de carte de votre choix (ici, OSM Tiles@Home)
31
* Toujours dans cet onglet, il est possible de choisir le style de point utilisé sur la carte. Par exemple, pour des drapeaux, choisir "Embassy", pour des avions, "airport" (mais le plus simple est d'y revenir plus tard, lorsqu'on a déjà un aperçu du rendu final de la carte)
32
* Enregistrer
33
34
h1. Affichage de la carte
35
36
Il s'agit ici de configurer, avec le module Views, une vue adéquate.
37
38
Vu que je l'ai fait déjà deux fois, autant vous épargner ce travail ^^
39
40
Voici la procédure simplifiée :
41
* Dans admin > construction > Vues, cliquer sur "ajouter", puis "importer".
42
* Donner un petit nom à cette vue.
43
* puis copier le texte suivant dans le champ de texte en-dessous :
44
<pre>
45
<code class="php">
46
 $view = new view;
47
 $view->name = 'vue_map';
48
 $view->description = 'pour faire une carte';
49
 $view->tag = 'map_vues';
50
 $view->view_php = '';
51
 $view->base_table = 'term_data';
52
 $view->is_cacheable = FALSE;
53
 $view->api_version = 2;
54
 $view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
55
 $handler = $view->new_display('default', 'Paramètres par défaut', 'default');
56
 $handler->override_option('fields', array(
57
   'node_count' => array(
58
     'id' => 'node_count',
59
     'table' => 'term_data',
60
     'field' => 'node_count',
61
   ),
62
   'name' => array(
63
     'label' => 'Terme',
64
     'alter' => array(
65
       'alter_text' => 0,
66
       'text' => '',
67
       'make_link' => 0,
68
       'path' => '',
69
       'link_class' => '',
70
       'alt' => '',
71
       'prefix' => '',
72
       'suffix' => '',
73
       'target' => '',
74
       'help' => '',
75
       'trim' => 0,
76
       'max_length' => '',
77
       'word_boundary' => 1,
78
       'ellipsis' => 1,
79
       'html' => 0,
80
       'strip_tags' => 0,
81
     ),
82
     'empty' => '',
83
     'hide_empty' => 0,
84
     'empty_zero' => 0,
85
     'link_to_taxonomy' => 1,
86
     'exclude' => 0,
87
     'id' => 'name',
88
     'table' => 'term_data',
89
     'field' => 'name',
90
     'override' => array(
91
       'button' => 'Supplanter',
92
     ),
93
     'relationship' => 'none',
94
   ),
95
   'lat' => array(
96
     'id' => 'lat',
97
     'table' => 'term_geo',
98
     'field' => 'lat',
99
   ),
100
   'lon' => array(
101
     'id' => 'lon',
102
     'table' => 'term_geo',
103
     'field' => 'lon',
104
   ),
105
 ));
106
 $handler->override_option('access', array(
107
   'type' => 'none',
108
 ));
109
 $handler->override_option('cache', array(
110
   'type' => 'none',
111
 ));
112
 $handler->override_option('items_per_page', 0);
113
 $handler->override_option('style_plugin', 'openlayers_map');
114
 $handler->override_option('style_options', array(
115
   'preset' => 'blog_maps',
116
 ));
117
 $handler = $view->new_display('openlayers', 'OpenLayers Data', 'openlayers_1');
118
 $handler->override_option('style_plugin', 'openlayers_data');
119
 $handler->override_option('style_options', array(
120
   'grouping' => '',
121
   'data_source' => array(
122
     'value' => 'other_latlon',
123
     'other_lat' => 'lat',
124
     'other_lon' => 'lon',
125
     'openlayers_wkt' => 'node_count',
126
     'other_top' => 'node_count',
127
     'other_right' => 'node_count',
128
     'other_bottom' => 'node_count',
129
     'other_left' => 'node_count',
130
     'name_field' => 'name',
131
     'description_field' => 'node_count',
132
   ),
133
 ));
134
 $handler->override_option('row_plugin', '');
135
 $handler->override_option('displays', array());
136
 $handler = $view->new_display('page', 'Page', 'page_1');
137
 $handler->override_option('path', 'map');
138
 $handler->override_option('menu', array(
139
   'type' => 'none',
140
   'title' => '',
141
   'description' => '',
142
   'weight' => 0,
143
   'name' => 'navigation',
144
 ));
145
 $handler->override_option('tab_options', array(
146
   'type' => 'none',
147
   'title' => '',
148
   'description' => '',
149
   'weight' => 0,
150
   'name' => 'navigation',
151
 ));
152
</code>
153
</pre>
154
155
156
h1. Dernières configurations
157
158
* Retour dans Construction du site > Openlayers, onglet preset. Modifier le preset précédemment créé.<br \>
159
Onglet "Layers & Styles", cocher les deux premières cases en face de OpenLayers Data (sous la liste des fonds de cartes)
160
* C'est le moment de régler l'onglet "Behavior", notamment en cochant la case Pop Up, puis le nom de la vue correspondante, juste en dessous.
161
* Si tout va bien, en allant sur monsite/map, la carte s'affiche !
162
163
h1. Retour sur la page du blog des expat
164
165 2 Julien Enselme
[[Blog_des_expats]]