Google的抓取工具无法理解自己的地图.如何解决?

jpe*_*lli 12 javascript seo google-maps openlayers

我发现了一些奇怪的单词,(有,在这里,图像,对不起),这些单词应该不在我的网站上,被Google的抓取工具当作关键字

第一个网站

在抓取使用Google地图的网页时,Google似乎遇到了错误,因此将错误字符串视为优秀的关键字!

我正在使用openlayers在两个站点中显示地图.代码是这样的

<script src="http://openlayers.org/api/OpenLayers.js"></script>
<script src="http://maps.google.com/maps/api/js?v=3&amp;sensor=false"></script>
<script type="text/javascript">
$(function() {
  $("#mapOuter").html('<div class="thumbnail"><div id="map" style="height:250px"></div></div>')
  map = new OpenLayers.Map("map")
  //map.addLayer( new OpenLayers.Layer.OSM   ("OpenStreeetMap") )
  map.addLayer( new OpenLayers.Layer.Google("Google v3"     ) )
  vectors = new OpenLayers.Layer.Vector("vector")
  map.addLayer( vectors )

  map.addControl( new OpenLayers.Control.LayerSwitcher() );
  map.addControl( new OpenLayers.Control.Navigation({documentDrag:true}) );
  map.addControl( new OpenLayers.Control.PanZoom() );
  var in_options = {
      'internalProjection': map.baseLayer.projection,
      'externalProjection': new OpenLayers.Projection("EPSG:4326")
  };

    var lon=-57.954900
    var lat=-34.917000

  map.setCenter(new OpenLayers.LonLat(lon, lat) // Center of the map
    .transform(
      new OpenLayers.Projection("EPSG:4326"), // transform from WGS 1984
      new OpenLayers.Projection("EPSG:900913") // to Spherical Mercator Projection
    ), 15 // Zoom level
  )

});
</script>
Run Code Online (Sandbox Code Playgroud)

如何修复此"错误",以便Google抓取工具可以从我的网站获取优质内容?

奖励Google搜索(以显示错误已编入索引)

谷歌搜索

更新,"解决方案"适用:

我的网站每个页面都有一个不同的地图,我最终将所有地图转换为图像,并且只保留一个交互式地图,我真正需要用户与坐标和映射内容进行交互.我使用的解决方案让我创建并开源osm-static-maps.希望它能帮助别人!

该网站得到了一些改进:

  • 摆脱谷歌网站管理员的这个尴尬的话.
  • 更相关的SEO使用静态图像与"alt"html img属性而不是"unindexable"js map.
  • 更快的页面加载(摆脱所有映射库和tile加载).
  • 更快的js性能(客户端处理的js更少)
  • 改进的用户体验:滚动页面导致地图缩放而不是实际滚动(您可以认为这可以通过禁用地图滚动来缩放来解决,但它会导致用户期望在滚动时缩放地图,两种方式都可以同时).

在不利方面,我发现:

  • 较少的用户交互性(枯燥的页面).
  • 地图上的背景较少(信息量较少的地图).

当用户点击地图img时,这两件事可以"修复"加载地图.不好的一面是,如果用户无意中点击地图img,则地图加载可被用户视为意外行为.

EDIT2

我做了一个开源项目.查看!https://github.com/jperelli/osm-static-maps

jpe*_*lli 0

应用“解决方案”:

我网站的每个页面都有一张不同的地图,最终我将所有地图转换为图像,只保留一张交互式地图,我真正需要用户与坐标和地图内容进行交互。我使用的解决方案引导我创建并开源 [osm-static-maps][3]。希望它对某人有帮助!

该网站进行了多项改进:

  • 摆脱了谷歌网站管理员中这个尴尬的词。
  • 使用具有“alt”html img 属性的静态图像而不是“不可索引”的 js 地图来进行更相关的 SEO。
  • 更快的页面加载(摆脱了所有映射库和图块加载)。
  • 更快的 js 性能(客户端处理的 js 更少)
  • 改进的用户体验:滚动页面导致地图缩放而不是实际滚动(您可以认为这可以通过禁用地图滚动缩放来解决,但这会导致用户期望在滚动时缩放地图,两种方式都是[好的和错误的]同时][4])。

不利的一面是,我发现:

  • 用户交互性较少(无聊的页面)。
  • 地图上的上下文较少(地图信息较少)。

当用户单击地图 img 时,这两件事可以“修复”加载地图。不好的一面是,如果用户无意中点击了地图 img,则地图加载可能会被用户视为意外行为。

编辑2

我用这个做了一个开源项目。查看!https://github.com/jperelli/osm-static-maps