我如何获得“纬度”和“经度”并将其显示在地图上

时间:2019-06-21 03:52:27

标签: javascript php sql wordpress meta-boxes

我刚刚开始了解Google Map API,并将其应用于Wordpress。从文档https://docs.metabox.io/fields/map/中,我从映射'Array([0] => 16.06765920497858,108.2019980633545,14)'中获得了地址。因此,如何获取“纬度”和“经度”,并在地图上显示该位置。 下面是我的整个代码:

function location_register_meta_boxes( $meta_boxes ) {
  $prefix = 'tuyen_custom_';
  $meta_boxes[] = array(
    'id'         => 'personal',
    'title'      => 'Option Google Maps',
    'post_types' => 'dia-diem',
    'context'    => 'normal',
    'priority'   => 'high',
    'fields' => array(
      array(
        'name'  => 'Link',
        'desc'  => 'Nhập link được liên kết',
        'id'    => $prefix . 'link',
        'type'  => 'text',
      ),
        array(
            'id'   => 'address',
            'name' => 'Địa chỉ',
            'desc'  => 'Nhập vào địa chỉ',
            'type' => 'text',
        ),
        array(
            'id'            => $prefix . 'map',
            'name'          => 'Vị trí bản đồ',
            'type'          => 'map',
            'address_field'          => 'map',
            'std'           => '16.058339, 108.220280',
            'address_field' => 'address',
            'api_key'       => 'xxxxxxxxxxxxxxxxx',
        ),
    )
  );
  return $meta_boxes;
}
add_filter( 'rwmb_meta_boxes', 'location_register_meta_boxes' );

导出至地址:

$address[] = get_post_meta(get_the_ID(),'tuyen_custom_map',true);
print_r($address);

1 个答案:

答案 0 :(得分:0)

如果我们只需要担心一个值,我会将$address var存储为字符串。看起来我们在默认位置使用了std键。在下面提供代码。

function location_register_meta_boxes( $meta_boxes ) {

  // Get the latitude, longitude.
  $address = get_post_meta( get_the_ID(), 'tuyen_custom_map', true ); 

  $prefix = 'tuyen_custom_';
    $meta_boxes[] = array(
    'id' => 'personal',
    'title' => 'Option Google Maps',
    'post_types' => 'dia-diem',
    'context' => 'normal',
    'priority' => 'high',
    'fields' => array(
      array(
        'name' => 'Link',
        'desc' => 'Nhập link được liên kết',
        'id' => $prefix . 'link',
        'type' => 'text',
      ),
      array(
        'id' => 'address',
        'name' => 'Địa chỉ',
        'desc' => 'Nhập vào địa chỉ',
        'type' => 'text',
      ),
      array(
        'id' => $prefix . 'map',
        'name' => 'Vị trí bản đồ',
        'type' => 'map',
        'address_field' => 'map',
        'std' => $address,
        'address_field' => 'address',
        'api_key' => 'xxxxxxxxxxxxxxxxx',
      ),
    )
  );

  return $meta_boxes;

}

add_filter( 'rwmb_meta_boxes', 'location_register_meta_boxes' );