Я пытаюсь встроить уникальную динамическую карту Google, используя API для каждого сообщения Wordpress, которая опирается на метатермины местоположения и использует геолокацию для сопоставления этих условий для размещения маркера. Я также выделяю границу страны/штата/провинции, используя загруженный файл JSON с картографическими данными для рассматриваемой страны/региона. Весь код находится в моем файле function.php в виде короткого кода, который я вставил в свои шаблоны сообщений. Код отлично работает в одном сообщении, но когда я пытаюсь открыть другое сообщение, я получаю ошибки инициализации, и на странице не появляется карта, не говоря уже о получении данных карты и рисовании границы на карте. Это код, который я сейчас использую, этот код Functions.php и файл Maps.js:
functions.php:
Я пытаюсь встроить уникальную динамическую карту Google, используя API для каждого сообщения Wordpress, которая опирается на метатермины местоположения и использует геолокацию для сопоставления этих условий для размещения маркера. Я также выделяю границу страны/штата/провинции, используя загруженный файл JSON с картографическими данными для рассматриваемой страны/региона. Весь код находится в моем файле function.php в виде короткого кода, который я вставил в свои шаблоны сообщений. Код отлично работает в одном сообщении, но когда я пытаюсь открыть другое сообщение, я получаю ошибки инициализации, и на странице не появляется карта, не говоря уже о получении данных карты и рисовании границы на карте. Это код, который я сейчас использую, этот код Functions.php и файл Maps.js: functions.php: [code]// Enqueue maps.js function enqueue_maps_js() { wp_enqueue_script('maps-js', get_stylesheet_directory_uri() . '/js/maps.js', array(), null, true); } add_action('wp_enqueue_scripts', 'enqueue_maps_js');
// Enqueue Google Maps API function enqueue_google_maps_api() { $google_api_key = GOOGLE_MAPS_API_KEY; wp_enqueue_script('google-maps-api', "https://maps.googleapis.com/maps/api/js?key=$google_api_key&libraries=geometry,marker&callback=initMaps&loading=async", array('maps-js'), null, true); } add_action('wp_footer', 'enqueue_google_maps_api');
// Google Map Geocoding Function shortcode able to pin multiple countries/provinces/states on a single map function display_country_map() { if (!is_singular('post')) { return ''; }
global $post; $terms = wp_get_post_terms($post->ID, 'country'); if (empty($terms)) { return 'No countries associated with this post.'; }