CountryLock
Block/allow countries with one toggle. Lightweight, no upsells. Includes admin bypass, IP allowlist, and block stats.
Maintenance 61/10044d since update
Active installs
10
Downloads
113
Reviews
1
Age
0.1y
TagsblockgeocountryGeoIPblock country
Plugin info
Total downloads: 113
Active installs: 10
Total reviews: 1
Average rating: 5
Support threads opened: 0
Support threads resolved: 0 (0%)
Available in: 1 language(s)
Contributors: 1
Last updated: 11/17/2025 (44 days ago)
Added to WordPress: 11/10/2025 (0 years old)
Minimum WordPress version: 5.0
Tested up to WordPress version: 6.8.3
Minimum PHP version: f
Maintenance & Compatibility
Maintenance score
Actively maintained • Last updated 44 days ago • 1 reviews
61/100
Is CountryLock abandoned?
Likely maintained (last update 44 days ago).
Compatibility
Requires WordPress: 5.0
Tested up to: 6.8.3
Requires PHP: f
Similar & Alternatives
Explore plugins with similar tags, and compare key metrics like downloads, ratings, updates, support, and WP/PHP compatibility.
IP2Location Country Blocker
Rating 4.2/5 (124 reviews) • Active installs 30,000
Login IP & Country Restriction
Rating 4.6/5 (51 reviews) • Active installs 7,000
Country Access Blocker
Rating 5.0/5 (1 reviews) • Active installs 100
Block Country
Rating 3.0/5 (6 reviews) • Active installs 70
Restrict Country Access
Rating 0.0/5 (0 reviews) • Active installs 50
AA Block country with redirect
Rating 0.0/5 (0 reviews) • Active installs 10
Description
CountryLock provides a simple, lightweight way to allow or block countries from accessing your WordPress site.
It’s designed to be “set it and forget it” with no upsells, ads, or complex configurations.
✨ Key Features
- Master Toggle: Enable or disable the firewall with a single click.
- Allowed Countries List: Specify which two-letter country codes (e.g.,
US,CA) are allowed. Everyone else is blocked. - Admin Bypass: Logged-in administrators can always bypass the block (toggleable).
- IP Allowlist: A simple list of IPs or CIDR ranges (like
123.45.67.89or10.0.0.0/8) that are always allowed. - Block Logging: See which countries and IPs are being blocked (toggleable).
- Zero-Lookup Detection: Automatically uses Cloudflare (
HTTP_CF_IPCOUNTRY) and other common server-level GEO headers for instant decisions with zero performance impact. - Remote Lookup: As a fallback, it can query an external service (
ipapi.co) if no headers are found.
External Services
This plugin uses one external service as a fallback to determine a visitor’s country if no local GEO headers (like those from Cloudflare or a server-level GeoIP module) are present.
- Service:
ipapi.co - What it’s used for: To look up the country of origin for a visitor’s IP address.
- Data Sent: The visitor’s IP address is sent to the service. This happens only if the “Use remote lookup if no geo headers” setting is enabled AND no local GeoIP headers are detected.
- Service Policies:
Installation
- Upload the
countrylockfolder to the/wp-content/plugins/directory. - Activate the plugin through the ‘Plugins’ menu in WordPress.
- Go to the new ‘CountryLock’ menu in your admin sidebar.
- Configure your allowed countries and toggle the plugin to “Enabled”.
Frequently Asked Questions
No FAQ available
Review feed
No reviews available
Screenshots
No screenshots available
Changelog
1.0.8
- Fix: Corrected admin page structure to prevent other plugins’ notices from appearing inside the UI.
1.0.7
- Fatal Error fix
1.0.6
- Refactor: Move inline CSS and JS to external files (tscl-admin.css, tscl-admin.js) and enqueue them properly.
- Refactor: Rename all internal prefixes from
cl_totscl_to meet WordPress.org prefixing standards. - Refactor: Remove custom 403 page in favor of the standard
wp_die()screen for better compatibility. - Fix: Use
filemtime()for asset versioning to automatically bust cache. - Docs: Add
readme.txtwith external service disclosure.
1.0.5
- Initial public release.