plugin-icon

Ochre W3C Geolocation Services

Par ochrelabs·
Geolocation Services attempts to retrieve a visitor's physical location, allowing for geographically relevant content to be delivered.
Version
0.04
Installations actives
10
Mis à jour récemment
Jan 9, 2012

Ochre’s Geolocation Services plugin for WordPress utilizes the W3C Geolocation API to retrieve a visitor’s physical location, enabling a WordPress website to present content relevant to a visitors current physical location such as local maps, event listings, branch and franchise locations, social media and other information that is geographically interesting.

The plugin provides three « back end » action hooks for use by your or third party plugins or theme actions, and AJAX actions for « front end » customization such as executing javascript with the resolved Location information, redirecting to a new page, or refreshing the current page.

Configuration

Global Configuration is available from the WordPress settings->Ochre Geolocation page:

  • Global or per-post/per page geolocation behavour

Per-page and per-post configurations include:

  • Executing custom javascript
  • Redirecting to a URL
  • Performing a page refresh
  • Firing off the ochregeo actions but doing nothing on the front end
  • Disabling completely

Actions

The following actions for do_action() are fired when a Geolocation update is received:

  • ochregeo_received_nosupport : No Geolocation support in the device/browser
  • ochregeo_received_unknownpos : A position could not be retrieved
  • ochregeo_received_location : Position was received. This action is passed the OCHRELABS_WP_Geolocation object as its only argument

AJAX actions

The following AJAX actions are implemented:

  • (nopriv) ochregeo_ochregeos : Transmits location information and executes an action based on a per-post/page or global setting.
  • (nopriv) ochregeo_get_coordinates : Retrieves last received location information. (we haven’t tested this)

Executing custom javascript after a succesful Geolocation update

Javascript executed on a per-page/post or global basis has access to a res object containing information from the Geolocation Service plugin.

Properties of this object are:

res.la; // latitude res.ll; // longitude res.ev; // elevation (not always available - do not rely on) res.ac // accuracy (not always available - do not rely on) If reverse geo coding is enabled, the object may also contain: res.country // country res.countryc // country code res.state // state res.statec // state code res.city // city

El Quickie API Reference

` // This is the Ochre Geo object instantiated by the plugin. $ochre_geo = new OCHRELABS_WP_Geolocation();

// Get status of the current geolocation request. $ochre_geo::STATUS_UPDATED means you have « valid » coordinate data. // Constants are: $ochre_geo::STATUS_QUERY; // waiting for update from client $ochre_geo::STATUS_UPDATED; // received coordinate update from client $ochre_geo::STATUS_NOTSUPPORTED; // client does not support geo location $ochre_geo::STATUS_ERROR; // an error was returned from the client $ochre_geo::STATUS_UNKNOWNPOS; // location was unknown $ochre_geo::STATUS_DISABLED; // module has been told not to present geolocation query

$ochre_geo->get_status();

// Set the location information manually (not normally needed) $ochre_geo->set_coordinates($latitude,$longitude,$elevation=0,$accuracy=0);

// get the current resolved location information – check get_status() first before relying on this data! // the returned array will be something like: array(« latitude »=>49.1234, « longitude »=> »-123.1234″, »elevation »=>0, »accuracy »=>0); $ochre_geo->get_coordinates();

// geocodes the current resolved location information and returns it as an array like array(« city »=> »Vancouver », »country »=> »Canada », »state »=> »British Columbia », »statec »=> »BC », »country »=> »Canada », »countryc »=> »CA ») $ochre_geo->geocode();

<h3>Reverse Geo Coder</h3>We've thrown in Yahoo! place finder Geocoding support. The geocoder() returns an array consisting of something like:

array( « city »=> »Vancouver », » « country »=> »Canada », « state »=> »British Columbia », « statec »=> »BC », « country »=> »Canada », « countryc »=> »CA » ) `

Geo Coding support is still young and subject to change. It’s not hooked into the Javascript API, and since there are at least a few geo coder javascript api’s already out there we haven’t decided whether to do this or not.

Gratuitsur le plan Business
En procédant à l’installation, vous acceptez les Conditions d’utilisation de WordPress.com ainsi que les Conditions de l’extension tierce.
Testé jusqu’à version
WordPress 3.3.2
Cette extension est disponible en téléchargement pour votre site .