Отобразить почтовую карту на пустой / новой странице

В моем файле single.php я показываю the_title (), the_content () и ссылку на карту Google (Javascript v3). Координаты Lat / Lng для каждой карты местоположения хранятся в двух отдельных мета-полях, прикрепленных к каждому сообщению.

Как я могу структурировать мой файл single.php, чтобы захватить значения Lat / Lng и отображать только карту при нажатии ссылки на карту?

Я думаю, мне нужно как-то присоединить значения lat / lng к моей константной ссылке, а затем, когда single.php замечает эти значения, он выделяет все, кроме:

<div id="map-canvas"></div> 

Я использую jQuery Mobile в качестве уровня презентации для этого проекта, и у меня есть довольно постоянные ссылки.

Мой файл single.php выглядит так:

 <?php get_header(); ?> <?php if (have_posts()) : while (have_posts()) : the_post(); ?> <!-- If no map coordinates found in permalink, show this block --> <?php the_title(); ?> <?php the_content(); ?> <a rel="external" href="<?php echo get_permalink(); ?>">Map</a> <!-- If coordinates found, only show this --> <div id="map-canvas"></div> <?php endwhile; ?> <?php endif; ?> <?php get_footer(); ?> 

Хотя в голове моего шаблона я называю простой JS-файл, как показано ниже:

 <script type="text/javascript"> $('.page-map').live("pagecreate", function() { var lat = <?php echo get_post_meta($post->ID, 'Latitude', true); ?>; var lng = <?php echo get_post_meta($post->ID, 'Longitude', true); ?>; var latlng = new google.maps.LatLng(lat, lng); var myOptions = { zoom: 10, center: latlng, mapTypeId: google.maps.MapTypeId.ROADMAP }; var map = new google.maps.Map(document.getElementById("map-canvas"),myOptions); var marker = new google.maps.Marker({ position: latlng, map: map, title:"<?php the_title(); ?>" }); }); </script> 

Спасибо.

Solutions Collecting From Web of "Отобразить почтовую карту на пустой / новой странице"

После нескольких Googling …

Новый сингл.php выглядит так:

 <?php get_header(); global $wp_query; if ( ! isset( $wp_query->query_vars['map'] ) ) { if (have_posts()) : while (have_posts()) : the_post(); the_title(); the_content(); endwhile; endif; ?> <p><a href="<?php echo get_permalink(); ?>?map=yes">Map</a></p> <?php } else { ?> <div id="map-canvas"></div> <?php } get_footer(); 

И functions.php вот так:

 add_filter('query_vars', 'parameter_queryvars' ); function parameter_queryvars( $qvars ) { $qvars[] = 'map'; return $qvars; } 

Функция сообщает WordPress ожидать переменную 'map' в строке запроса, а single.php проверяет, была ли установлена ​​или передана переменная map через ссылочную страницу.

Надеюсь, это поможет кому-то.