【问题标题】:Can't get google map to display on wordpress page无法让谷歌地图显示在 wordpress 页面上
【发布时间】:2014-07-22 05:57:12
【问题描述】:

我是 google maps api 的新手,我正在使用它在我的 wordpress 页面上放置地图并获取用户的位置。到目前为止,我在 header.php 文件中保留了以下代码,其中 myapikey 替换为我的实际 api 密钥。

<script type="text/javascript"
  src="https://maps.googleapis.com/maps/api/js?libraries=places&key=myapikey"></script>

我还有一个带有以下代码的 wordpress 页面。当我将其保存在 html 文件中时,此代码有效。但是,当我将此代码放在我的 wordpress 页面上时,我什至没有显示地图。我正在使用 Google Maps API v3 地理位置。谁能帮帮我。

<!DOCTYPE html>
<html>
  <head>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
    <meta charset="utf-8">
    <style type="text/css">
      html { height: 100% }
      body { height: 100%; margin: 0px; padding: 0 }
      #map-canvas { height: 100%; width: 100%; top: -100px;}
    </style>

    <script type="text/javascript">
      var map;

      function initialize() {
        var mapOptions = {
          zoom: 12
        };
        map = new google.maps.Map(document.getElementById("map-canvas"),
            mapOptions);

        //Html five geolocation
        if(navigator.geolocation) {
          navigator.geolocation.getCurrentPosition(function(position) {
            var pos = new google.maps.LatLng(position.coords.latitude,
                                             position.coords.longitude);

            var infowindow = new google.maps.InfoWindow({
              map: map,
              position: pos,
              content: "HTML5 is used."
            });

            map.setCenter(pos);
          }, function() {
            handleNoGeolocation(true);
          });
        } else {
          // Browser doesn't support Geolocation
          handleNoGeolocation(false);
        }
      }
      function handleNoGeolocation(errorFlag) {
        if (errorFlag) {
          var content = 'Error: The Geolocation service failed.';
        } else {
          var content = 'Error: Your browser doesn\'t support geolocation.';
        }

        var options = {
          map: map,
          position: new google.maps.LatLng(60, 105),
          content: content
        };

        var infowindow = new google.maps.InfoWindow(options);
        map.setCenter(options.position);
      }

      google.maps.event.addDomListener(window, 'load', initialize);
    </script>
  </head>
  <body>
    <div id="map-canvas"/>
  </body>
</html>

【问题讨论】:

  • 向我们展示你在 wordpress 中所做的事情,你是如何收录这个页面的?
  • 对于我的 wordpress 页面,我转到页面并添加了一个新页面。在该页面中,我将上面的 html 代码保留在文本框中。我之前已经能够在我的页面上创建一个有效的谷歌地图,但是当我尝试使用 Geolocation 和 library=places 时似乎出现了问题。

标签: javascript php wordpress google-maps google-maps-api-3


【解决方案1】:

您不能将完整的文档粘贴到编辑器中,您放入编​​辑器的内容应该是您页面的内容,它可能几乎是您放入 HTML 页面的任何内容(没有 html ,头部和身体)。

脚本和样式总是通过主题的页眉/页脚或插件包含。

【讨论】:

  • 我将代码放入我的脚本中,并将样式代码放入头文件中,它可以工作。非常感谢。
猜你喜欢
  • 2017-06-21
  • 2017-04-09
  • 1970-01-01
  • 2018-09-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-17
  • 1970-01-01
相关资源
最近更新 更多