私は200以上のカスタムポストを持っており、それぞれのカスタムポストにカスタムフィールド(add_city、add_state、add_location)があります。 kustompostをソートするには、この美しいコードを使います。
<?php $args = array(
'meta_query'=> array(
array(
'key' => 'add_state',
'value'=> 'ill'
),
array(
'key' => 'add_city',
'value' => 'chicago'
))); $posts = query_posts($args); ?>
詳細ページでは、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>
それから私はページを作成し、これらのコードのいずれかを文字列にしようとすることに多くの時間を費やしました。彼は白い画面しか受け取らなかった。私がこのパズルを解くのを手伝ってください!
地図上に複数のマーカーを取得する唯一の方法は、Google Maps APIを使用することです。 https://developers.google.com/maps/documentation/javascript/tutorial 。
あなたがiframeを通して参照している方法は1つのマーカー(1つの場所)しか許しません。