MC Country
Developer
3rd Party (Free)
431 downloads (last 90 days)
EE Version Support
- ExpressionEngine 2
Compatibility
If an item is crossed out, it might be untested, not applicable or incompatible. Contact the developer to be sure.
- Updater
- Multi Site Manager
- Stand Alone Entry Form
- Low Variables
- Content Elements
- Better Workflow
- Matrix
- Grid
- Webservice
- Publisher
Requirements
- jQuery for the Control Panel
Add-On Type(s)
Plugin
Tags
Uses the IP2Nation module to detect and output a visitor's country (the ISO country code) from their IP. Can optionally display content or redirect to a URL if a visitor is from a specified list of countries.
Based on OpenMotive’s Country plugin (see credits).
PLEASE NOTE
This plugin requires the “IP to Nation” module.
Release Notes
- v1.1.1 (2016-02-17) - Fixed documentation specifying `allowed` instead of `allow`
- v1.1.0 (2015-06-15) - Added tag pair support
- v1.0.1 (2014-09-03) - Original release
FEATURES
This plugin has five main features.
OUTPUT COUNTRY CODE
To output just the two-letter country code, place the following tag in any of your templates:
{exp:mc_country}
REQUIRED PARAMETERS
None.
OPTIONAL PARAMETERS
default
= If a visitor’s IP cannot be located, the country code will default to this value.debug
= Force a specific two-letter country code. Useful when working locally (IPs won’t resolve to the correct country on your local network).
-
COUNTRY BASED REDIRECT
To redirect if user is from a specified country, specify a list of countries and a redirect path.
{exp:mc_country countries="xx|xx|xx|xx" redirect="/path/to/redirect/to"}
REQUIRED PARAMETERS
countries
= List each two-letter country code separated by |redirect
= The url to redirect to if user is from one of the specified countries.
OPTIONAL PARAMETERS
default
= If the IP cannot be located, country code will default to this value. Useful when working locally on your own machine.debug
= Force a specific two-letter country code. Useful when working locally (IPs won’t resolve to the correct country on your local network).
-
COUNTRY SPECIFIC CONTENT
If you need to display content for visitors from specific countries, simply wrap the content in tags and specify the countries as a parameter.
{exp:mc_country countries="xx|xx|xx"} Content here {/exp:mc_country}
REQUIRED PARAMETERS
countries
= List each two-letter country code separated by |
OPTIONAL PARAMETERS
debug
= Force a specific two-letter country code. Useful when working locally (IPs won’t resolve to the correct country on your local network).
-
RESTRICTED SUBSET COUNTRY DETECTION
This feature allows you to restrict which countries visitors are detected from to a specified subset. If a visitor is from one of the allowed countries, it outputs that country. If a visitor is from a country not specified in the subset of allowed countries, it outputs the specified default country. See the examples below for ideas on how to use this feature.
{exp:mc_country:restrict allow="xx|xx|xx" default="xx"}
REQUIRED PARAMETERS
allow
= List each two-letter country code separated by |default
= If IP cannot be located, country code will default to this value. Note that the default country should typically also be listed among the allowed countries.
OPTIONAL PARAMETERS
debug
= Force a specific two-letter country code. Useful when working locally (IPs won’t resolve to correct country on your local network).
-
COUNTRY DETECTION TAG PAIR
Using the tag pair can give more flexibility in parsing the results of the country detection. It also gives you access to the country name in addition to the code, and allows you to determine whether the code should be returned as upper- or lowercase.
{exp:mc_country:pair case="upper"} The country code "{country_code}" belongs to {country_name} {/exp:mc_country:pair}
REQUIRED PARAMETERS
None.
OPTIONAL PARAMETERS
code_case
= Return the{country_code}
value as uppercase (code_case=“upper”
orcode_case=“uppercase”
) or lowercase (default, can also be specified ascode_case=“lower”
)debug
= Force a specific two-letter country code. Useful when working locally (IPs won’t resolve to correct country on your local network).
VARIABLES
{country_code}
= The two-letter country code{country_name}
= The English name of the detected country.
EXAMPLES
-
Output two digit country code, defaulting to US:
{exp:mc_country default="us"}
-
Redirect the user if they are from the US, UK, or Canada:
{exp:mc_country countries="us|gb|ca" redirect="/english"}
-
You can also redirect to another site completely:
{exp:mc_country countries="ca" redirect="http://www.google.ca"}
-
Use debug mode to force United States country code:
{exp:mc_country countries="us|ca|gb" redirect="http://www.google.ca" debug="us"}
-
Show certain content to visitors from the US, Canada, and Mexico:
{exp:mc_country countries="us|ca|mx"} <h2>Hello, North America!</h2> {/exp:mc_country}
-
Figure out which branch of an organization to use for a visitor:
{exp:mc_country:restrict allow="us|ca|uk|jp" default="us"}
If a visitor is detected as being in Canada, the output would be:
ca
If a visitor is detected as being in Germany, which is not in the specified list of allowed countries, the output would default to:
us
-
Display country name and code using the tag pair:
{exp:mc_country:pair code_case="upper"} The country code for {country_name} is {country_code} {/exp:mc_country:pair}
COUNTRY CODES
A list of country codes can be found at:
http://www.iso.org/iso/english_country_names_and_code_elements
CREDITS
This is an EE2 port & enhancement of the OpenMotive Country EE1 plugin.
Due to significant changes in the way data is stored in EE2’s IP database table, I had to copy and adapt two internal functions from EllisLab’s IP2Nation module. No copyright infringement is intended - I simply couldn’t figure out how to make use of the database table otherwise.
Download MC Country
EE Support | Downloads | Add-On Version | Release Date |
---|---|---|---|
Not Specified | Download | 1.1.1 | Feb 17, 2016 |
MC Country Links
This entry was created June 20, 2013, 10:22 am.
This entry was last updated February 17, 2016, 12:27 pm.
Disclaimer: Information about ExpressionEngine add-ons is provided as a service to you, the user, and every member of the ExpressionEngine community. devot:ee is not responsible if you hose, mangle, wreck, or otherwise destroy your EE website by installing an add-on that you found out about at this site, regardless of its rating, Favorites status, commercial or free status, or general popularity. Caveat EEmptor!
Returns: devot:ee has a 30-day return policy on all commercial add-ons sold through devot-ee.com. If you need to return an add-on, do not go to the developer or the developer's site, but rather visit our returns page at https://devot-ee.com/returns to initiate your return. If you have questions, email support@devot-ee.com.
2 Reviews:
Anthony Mellor 11.20.14
Very useful add-on and good support from the developer
o4 11.21.13
Works like a charm. Tested on EE 2.5.5. Thanks!