• Best Multilingual Plugin
  • Compatible With Your Favorite Themes
  • Automatic and Human Translation
  • Translation, Multilingual, SEO

Geocode Switch

by elialgranti

3 Ratings

  • 4.5

Active Installations

70+

Last Update

6 years

Quality

D

Plugin Description

Description
GeoSwitch is a plugin that allows you to change the content of your site based on the location of your client’s IP.
To geolocate users based on IP GeoSwitch supports can user either the new the new GeoIP2 MaxMind
databases or GeoIP2 Precision Service.
MaxMind offers free and paid geolocation databases and the paid GeoIP2 Precision web service,
the author of this plugin is not affiliated with MaxMind in any way.
The main development of this plugin is in github.
Please open a new issue if you find a bug in this plugin.
This plugin uses the MaxMind PHP library which is released under the
Apache License version 2.0
Usage
= GeoSwitch Conditional Blocks =
GeoSwitch uses two shortcodes [geoswitch] and [geoswitch_case] to create conditional blocks.
The [geoswitch] shortcode is used to enclose one or more [geoswitch_case] shortcodes with different conditions. The
[geoswitch_case] shortcodes enclose content that will be shown if the condition is true.
The following example illustrates a GeoSwitch conditional block that will show different contact information depending
on the user’s IP location:
[geoswitch]
[geoswitch_case country_code=”AU” state_code=”NSW”]New South Wales Office[/geoswitch_case]
[geoswitch_case country_code=”AU”]Australian Office[/geoswitch_case]
[geoswitch_case]International Office[/geoswitch_case]
[/geoswitch]
The above GeoSwitch block will display “New South Wales Office” to users in New South Wales within Australia,
“Australian Office” to other Australian users and “International Office” to any other user.
The [geoswitch_case] shortcode accepts the following attributes:
country
– comma delimited list of country names
country_code
– comma delimited list of country ISO codes
state
– comma delimited list of of state names
state_code
– comma delimited list of state ISO codes
city
– comma delimited list of city names
within
,
from
– This set of attributes is used to test for distances. Within is the distance in kilometers or miles and
from is the centre point represented as “latitude,longitude” in degrees (example [geoswitch within=”10” from=”-33.7167,151.6”]).
The
[geoswitch_case]
shortcode matches only the attributes specified so:
[geoswitch]
[geoswitch_case city=”paris”]You are in Paris![/geoswitch_case]
[/geoswitch]
Will display “You are in Paris!” to any user with an IP location in a city named Paris, e.g Paris, France or Paris, Texas, USA.
A
[geoswitch_case]
shortcode without any attributes always matches and can be used as the last condition in a conditional block
to show default content.
Content between [geoswitch_case] blocks can contain any markup including any other shortcodes, but conditional blocks should
not be nested as this is not supported by WordPress.
Content between the [geoswitch] and [geoswitch_case] shortcodes should be whitespace but is usually ignored:
[geoswitch] *DON’T WRITE HERE*
[geoswitch_case]…[/geoswitch_case] *OR HERE*
[geoswitch_case]…[/geoswitch_case]
[/geoswitch]
Informational Shortcodes
In addition to the conditional block GeoSwitch offers the following shortcodes to display user information:
[geoswitch_ip]
– The user’s IP.
[geoswitch_city]
– The user’s city name.
[geoswitch_state]
– The user’s state name.
[geoswitch_state_code]
– The user’s state ISO code.
[geoswitch_country]
– The user’s country name.
[geoswitch_country_code]
– The user’s country code.
If the IP of the user cannot be geo located these shortcodes return ‘?’
Debug Shortcodes
geoswitch_setip
– Override the user IP. Affects shortcodes after this one.
Usage:
[geoswitch_case ip=’10.0.0.10′]
For debugging whole websites the user IP can be set globally in the admin settings for the plugin.
Filter Hooks
Geoswitch supports the following filter hooks:
geoswitch_skip_ip_check
Allows to programatically skip the ip check. If the hook callback function returns true the MaxMind libraries are not used to check the IP and the
default content (if configured) will be displayed.
Usage:
function skip_ip_callback( $skipCheck, $userIp ) {
if ( some_custom_test($userIp) ) {
$skipCheck = true;
}
return $skipChek;
}

add_filter( ‘geoswitch_skip_ip_check’, ‘skip_ip_callback’, 10, 2 );

Similar Plugins

  • Report Bug
The content on this website originates from various sources. All rights to the original content remain with the respective author. If you believe that your copyrights have been infringed by the use of content on this website, please contact us at info@plugin-guru.com. We will remove the content in question immediately.

This is the heading

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Collections

Create your first Collection

To create a collection, simply click on the symbol on the desired plugin.

You can see this symbol when you move the mouse over the plugin. 

Current Level

Plugin Magican

You have reached 0 views on your collections and are currently Plugin Magican. You magically help people find the right plugins and are a great asset to the community

0 of 500 views reached