2012-09-30 31 views
2

我使用Wordpress来建立我的网站,我想添加一个表格,名字,描述,图片和地图上的位置。即让用户在地图上添加自己的标记。wordpress - 如何让用户在地图上添加位置?

并通过按'提交'将整个数据(名称,描述,图片,经度,纬度)保存到数据库中。

我该怎么办呢?我应该使用哪些插件?

回答

3

您可以使用Google Placemarks并为他们提供创建插件使用的“地标”自定义帖子类型的权限。您可能需要破解精选图片。

或者,您正在寻找完整的自定义帖子类型创建和Google地图API集成,这是一种利用精选图片的自定义循环。

2

最接近你需要的插件是SMacFadyen建议的 - BGMP。但是,如果你想自己做,你需要看看这个:

这是第一个有很多的教程就如何显示地图和InfoWindows,所以你不应该有太多的问题。对于自定义帖子类型,有一个很棒的generator,它应该完成99%的工作。对于元盒,你可以去几个方面:

  • plugin - 最简单的,但你要取决于我不从零开始很喜欢
  • 插件 - tutorial - 这是比插件好了很多,但需要很多工作
  • 元盒库
  • 之一 - 这是我经常去的方式 - 我发展我自己的,但它是还没有准备好,以便在此期间,我会建议My-Meta-BoxReusable Custom WordPress Meta Boxes
+0

tnx用于回复,对于我使用'联系表单7'和'联系表单7到数据库扩展'的表单。有没有办法钩住这些插件中的标记功能? – shemesh

+0

天知道。正如我所说 - 我倾向于不依赖于其他人的插件:) –

0

几次,当searchi如何使这项工作,我偶然发现这个线程。每次我都不满意现有插件处理这个问题的方式。所以,我现在把它放在一起。

下面是我的解决方案的概述。

  1. 使用插件Custom Post Type UI为地图上的标记创建自定义帖子类型。
  2. 使用插件Advanced Custom Fields向此代表位置的自定义帖子类型添加一个字段。字段类型是“Google地图”类型。
  3. 将标准Google Maps API clustering example复制到主题中的相应主题文件中。
  4. 要显示您的标记,请在您的主题文件中通过请求新创建的自定义帖子类型的帖子来生成位置列表。
  5. 对于每个标记/位置,请选取“Google地图”字段并抽取经纬度。
  6. 对于每个标记/位置,为所有位置构建适当的数组元素,至少包括纬度和经度,也可能是一个infowindow的内容。

这应该给你一个地图,绘制出所有的位置。

要允许用户添加位置:

  1. 添加监听到地图监听点击和返回的位置点击。也许这个聆听者只是在用户表达了他向地图添加位置的意图之后才运行。
  2. 当用户点击时,打开一个表单,例如在一个模式中。该表格应该包含具有经度和纬度的隐藏字段,并且例如也可以包含相关位置的静态图像。其他表单字段将是您需要的字段。
  3. 使用AJAX提交表单。例如,请参阅this tutorial。在主题的functions.php中,您可以验证提交并将新提交添加到您的Wordpress数据库中,以匹配您的新自定义帖子类型。

根据您如何存储新位置,在下次地图重新加载时,新位置将包含在内。 (或者您可能需要首先授权新位置。) 您也可以通过AJAX重新加载所有位置。

相关问题