This plugin gives you the ability to limit WordPress admin logins based on the country the visitor’s IP address is located in. It uses Maxmind’s GeoIP database which comes in a free lite version.
You can choose between a white- and blacklist mode. In whitelist mode only visitors with IP addresses from the configured countries are allowed. In blacklist mode visitors with IPs from the configured countries are not allowed to login.
So far this plugin is available in English and German. If you are interested to translate the plugin to your language, use the included POT file with a programm like PoEdit and get in touch.
- Kudos go out to the guys over at Maxmind for providing a lite version of their GeoIP database for free.
- Same to Konstantin Kovshenin who has written a great tutorial on the WordPress Settings API which helped me a lot while cleaning up the plugin for the public.
- Give big hands to sudar for his toolset for deploying WordPress plugins from GitHub. A must have, when developing WordPress plugins on GitHub.
- Last but not least I send a thank you note to Gabriel Oliveira on whose work this plugin’s banner image is based.
This section describes how to install the plugin and get it working.
- Upload the plugin to your WordPress plugin directory, which is probably
- Download Maxmind’s current GeoLite database and extract it, e.g. to your WordPress uploads directory, which is probably
- Activate the plugin through the ‘Plugins’ menu in WordPress
- Go to settings and configure the plugin
This plugin requires at least PHP 5.3. The minimum tested WordPress version is 3.5.0. Please report if it works in even older versions.
- HELP! I locked myself out! How do I get in again?
No worries! Just add
define('LIMIT_LOGIN_COUNTRIES_OVERRIDE', TRUE);to your
wp-config.phpand you can login again in whichever country you are.
Contributors & Developers
“Limit Login Countries” is open source software. The following people have contributed to this plugin.Contributors
Interested in development?
- Hotfix for settings link showing up for all plugins in the Plugins list table.
- Raise tested WordPress version to 4.0.
- Enforcing PHP 5.3 requirement now.
- Updated bundled geoip-api-php.
- Added settings link in the Plugins list table.
- Refactored code to match WordPress coding style (thank you PhpStorm).
- Add missing changelog for 0.6.1
- Raise tested WordPress version.
- Public release in WordPress plugin directory.
- Even more cleanup.
- readme.txt added.
- and more cleanup before making the plugin public.
- Search for GeoIP database file added.
- Refactoring of GeoIP access code to prepare for future changes.
- Options page added. No more hardcoded values.
- Translation added.
- Much better design, but still a lot of hardcoded stuff.
- Updated GeoIP API trunk.
- Initial version. ~2011. Works as intended, but it’s not very beautiful.