Utilizando posts para refenciar ubicaciones con WordPress y Geo Mashup

Escrito el: April 7th, 2011 | | Categoria: Web, wordpress | Tags: , , , , , , | 1 Comentario »

Geo Mashup es un plugin que nos sirve para interactuar con Google Maps, utilizando diversas funcionalidades del API y utilizando la DB de WordPress para almacenar los datos.

La interrogante surgio luego de necesitar referenciar en un mapa de una pagina padre, las referencias de las paginas hijas almacenadas con Geo Mashup. Sin embargo la documentacion del plugin, además de no ser muy específica, no cuenta con todos los parametros con los cales funciona, los cuales descubrí luego de echarle una mirada al código de Geo Mashup, y luego de un buen rato encontre el parametro object_ids de la funcion GeoMashup::Map, resultando la solución a mi dolor de cabeza. Finalmente mi código quedo así:


<?php

$pageId=$post->ID;
 //Toma paginas hijas y muestra ubicacion en el mapa de la ciudad
 $wp_query = new WP_Query();
 $all_wp_pages = $wp_query->query(array('post_type' => 'page'));

 $children = get_page_children($pageId, $all_wp_pages);
 $ids="";
 foreach ($children as $child) {
 $coma=($ids=="")?'':',';
 $ids.=$coma.$child->ID;
 }

 echo GeoMashup::map( 'map_content=global&object_name=post&object_ids='.$ids );

 ?>
 <?php wp_reset_query(); ?>