hypejunction/hypemaps

Elgg 的地图用户界面

安装: 166

依赖: 0

建议: 0

安全: 0

星标: 5

关注者: 5

分支: 8

开放问题: 2

类型:elgg-plugin

2.2.2 2016-02-24 20:20 UTC

This package is auto-updated.

Last update: 2024-08-29 04:04:49 UTC


README

Elgg 1.10 Elgg 1.11 Elgg 1.12 Elgg 2.0

Elgg 的 Google 地图集成

支持开发

  1. 给我买份蔬菜!
  2. 您还可以通过分享您分配给 AdSense 单元的房地产百分比来支持此插件的开发。您可以在插件设置中指定您希望与我分享的百分比(0 到 100)。在每次页面加载时,插件将在您的发布者 ID 和我的发布者 ID 之间切换。例如,如果您选择分享 10%,则您的发布者 ID 将在 90% 的所有页面浏览中使用,我的发布者 ID 将在 10% 的页面浏览中使用。

入门

  • 您需要一个有效的 Google API 密钥。您可以在 https://console.developers.google.com 获取一个。配置您的项目以包含以下 API

  • 静态地图 API

  • Google Maps Javascript API

  • Google Maps Geolocation API

  • Geocoding API

  • Geocoding 功能不包括在此插件中。您需要安装另一个适合该目的的插件。您可以使用我提供的 hypeGeo 插件,在此处找到:https://github.com/hypeJunction/hypeGeo

  • 地点功能已被拆分为独立的插件,因此如果您是从先前版本升级,请获取该插件的副本:https://github.com/hypeJunction/hypePlaces

  • 确保您将 API 密钥的使用限制在您管理的域中,否则其他人可以从面向公共的 JS/静态地图 URL 复制它们并重新使用。

开发者注意

  • 与切换相册视图的方式类似,地图视图可以通过向使用核心 API 生成的任何页面添加 ?list_type=mapbox 来切换。

  • 要构建和显示新的动态地图,使用以下类似方法

// Display friends on the map
$params = array(
	'options' => array(
		'id' => 'friends', // List id / must be unique on the page
		'types' => 'user',
		'relationship' => 'friend',
		'relationship_guid' => elgg_get_logged_in_user_guid()
	),
	'getter' => 'elgg_get_entities_from_relationship',
);
echo \hypeJunction\Maps\ElggMap::showMap($params);

此示例将渲染用户朋友的地图。生成的地图将是可筛选的,而不是使用 elgg_list_entities_from_relationship() 并传递 'list_type' => 'mapbox' 生成的地图。

请注意,以这种方式生成的地图将仅包括具有地理编码位置的实体。如果您需要具有地图概述的所有实体的列表,请使用 elgg_list_entities_* 并传递 mapbox 列表类型。

  • 要修改网站范围或群组地图的列表,请使用 'search:site','maps''search:group','maps' 钩子。查看代码以获取一些示例。您需要添加您自定义的视图。

截图

alt text