代码之家  ›  专栏  ›  技术社区  ›  gwydion93

嵌入式代码不会显示在WordPress页面中

  •  0
  • gwydion93  · 技术社区  · 6 年前

    我有一些简单的代码,其中包含在浏览器中显示Web地图所需的所有HTML、CSS/样式和JavaScript。如果我从本地文件启动它,它会在浏览器中正确打开并显示Web地图。我现在正在尝试使用我的WordPress编辑器/CMS将代码嵌入到一个页面中。

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no">
    <link rel="stylesheet" href="https://js.arcgis.com/3.26/esri/css/esri.css">
    <style>
      html, body, #map {
        height: 100%;
        padding: 0;
        margin: 0;
      }
    </style>
    <script src="https://js.arcgis.com/3.26/"></script>
    <script src="https://requirejs.org/docs/release/2.3.5/minified/require.js"></script>
    <script>
      require(["esri/map", "dojo/domReady!"], function(Map) {
        var map;
        require(["esri/map", "dojo/domReady!"], function(Map) {
          map = new Map("map", {
            basemap: "topo",
            center: [-122.45, 37.75],
            zoom: 13
          });
        });
      });
    </script>
    
    <div id="map"></div>
    

    我尝试安装一个名为'scripts n styles'的插件,它可以帮助阅读 <script> 标签,但仍然显示为空白。这是一个全新的Word Press安装,因此我不确定是否还有其他需要,或者我的代码是否配置错误。任何建议

    1 回复  |  直到 6 年前
        1
  •  1
  •   Tony M    6 年前

    这个 <meta> 标签最好添加到 <head> 一样 link (尽管wp已经有了这个viewport标签,所以可以忽略它)。您可以在页面本身添加其余部分(在文本部分-不需要插件)。我建议创建一个新模板,请参见: WP Templates

    控制台错误显示多个 defines . 我拿出了看起来重复的 require 它在页面上工作良好(复制/粘贴):

    <link rel="stylesheet" href="https://js.arcgis.com/3.26/esri/css/esri.css">
    <style>
      html, body, #map {
        height: 100%;
        padding: 0;
        margin: 0;
      }
    </style>
    <script src="https://js.arcgis.com/3.26/"></script>
    <script src="https://requirejs.org/docs/release/2.3.5/minified/require.js"></script>
    <script>
        var map;
        require(["esri/map", "dojo/domReady!"], function(Map) {
          map = new Map("map", {
            basemap: "topo",
            center: [-122.45, 37.75],
            zoom: 13
          });
        });
    </script>
    
    <div id="map"></div>

    虽然这是可行的,但我还是建议把它放在模板上。