web-dev-qa-db-fra.com

Comment ajouter plusieurs marqueurs sur la carte Google, à une certaine méta_key et meta_value

J'ai plus de 200 customposts et chacun a customfields (add_city, add_state, add_location) dans chaque custompost est googlmap avec customfield (geo_longitude geo_latitude) Aide s'il vous plaît, affiche dans googlmap plusieurs marqueurs, en fonction de plus meta_key meta_value. Pour trier les kustompostes j'utilise ce beau code:

<?php $args = array(
'meta_query'=> array(
    array(
        'key' => 'add_state',
        'value'=> 'ill'
    ),
           array(
                    'key' => 'add_city',
                    'value' => 'chicago'
     ))); $posts = query_posts($args); ?>

Sur la page de détails, j'utilise ce code pour googlmap:

<?php
        $add_arr = array();
        if(get_post_meta($post->ID,'address',true))
        {
            $add_arr[] = get_post_meta($post->ID,'address',true);
        }
        if(get_post_meta($post->ID,'add_city',true))
        {
            $add_arr[] = get_post_meta($post->ID,'add_city',true);
        }
        if(get_post_meta($post->ID,'add_state',true))
        {
            $add_arr[] = get_post_meta($post->ID,'add_state',true);
        }

        $add_str = '';
        if($add_arr)
        {
            $add_str = implode(',',$add_arr);
        }
        if($add_str)
        {
            $geo_longitude = get_post_meta($post->ID,'geo_longitude',true);
            $geo_latitude = get_post_meta($post->ID,'geo_latitude',true);
        ?>
    <div class="propertymap">


             <?php if($geo_longitude &&  $geo_latitude){

                    require_once (TEMPLATEPATH . '/library/map/preview_map.php');
                    preview_address_google_map($geo_latitude,$geo_longitude,$add_str);
            }else{?>
            <iframe src="http://maps.google.com/maps?f=q&source=s_q&hl=en&geocode=&q=<?php echo $add_str;?>&ie=UTF8&z=14&iwloc=A&output=embed" height="358" width="239" scrolling="no" frameborder="0" ></iframe>
            <?php }?></div>

Ensuite, j'ai créé une page et beaucoup de temps en essayant d'enchaîner l'un de ces codes. Il n'a reçu qu'un écran blanc. S'il vous plaît, aidez-moi à résoudre ce casse-tête !!!

1
Shklyar Sergio

Le seul moyen d'obtenir plusieurs repères sur une carte consiste à utiliser l'API Google Maps. https://developers.google.com/maps/documentation/javascript/tutorial .

La façon dont vous faites référence à travers une iframe ne permet qu’un seul marqueur (un seul emplacement).

1
Nick