{"id":279902,"date":"2026-07-24T10:18:48","date_gmt":"2026-07-24T10:18:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/block-account-create-login-by-country-grc\/"},"modified":"2026-07-24T12:03:43","modified_gmt":"2026-07-24T12:03:43","slug":"block-account-create-login-by-country-grc","status":"publish","type":"plugin","link":"https:\/\/sv.wordpress.org\/plugins\/block-account-create-login-by-country-grc\/","author":13210680,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.3.9","stable_tag":"2.3.9","tested":"7.0.5","requires":"6.5","requires_php":"7.4","requires_plugins":null,"header_name":"Block Account Create Login by Country GRC","header_author":"Robert G.","header_description":"Blocks users from selected countries from logging in or creating accounts (WordPress + WooCommerce). Uses ipinfo.io for GeoIP and restcountries.com for country list.","assets_banners_color":"","last_updated":"2026-07-24 12:03:43","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/profiles.wordpress.org\/robertutzu\/","header_author_uri":"https:\/\/profiles.wordpress.org\/robertutzu\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":233,"num_ratings":0,"support_threads":1,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"2.0":{"tag":"2.0","author":"robertutzu","date":"2026-07-24 10:18:40"},"2.3.9":{"tag":"2.3.9","author":"robertutzu","date":"2026-07-24 12:03:43"}},"upgrade_notice":[],"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["2.0","2.3.9"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"The settings dashboard allowing administrators to choose lookup methods, blocked roles, and permitted countries."}},"plugin_section":[],"plugin_tags":[88702,4124,30650,4130,600],"plugin_category":[45,49],"plugin_contributors":[162797],"plugin_business_model":[],"class_list":["post-279902","plugin","type-plugin","status-publish","hentry","plugin_tags-country-block","plugin_tags-geolocation","plugin_tags-login-restriction","plugin_tags-maxmind","plugin_tags-security","plugin_category-ecommerce","plugin_category-maps-and-location","plugin_contributors-robertutzu","plugin_committers-robertutzu"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/block-account-create-login-by-country-grc.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Block Account Create Login by Country GRC is a robust WordPress security plugin designed to prevent unauthorized logins for specified user roles from restricted geographic regions. It utilizes local MaxMind GeoLite2 database lookups with a standalone, zero-dependency binary .mmdb parser for fast offline processing, backed by automatic daily mirror updates and remote API fallbacks.<\/p>\n\n<h4>Key Features<\/h4>\n\n<ul>\n<li>Role-Based Country Restriction: Target specific high-privilege or custom user roles (e.g., Administrators, Editors, Authors, Shop Managers) and block them from logging in if their IP address maps to a restricted country.<\/li>\n<li>Local MaxMind GeoLite2 Database: Includes a built-in, zero-dependency binary .mmdb reader parser for high-performance offline local IP geolocation lookups.<\/li>\n<li>Automatic Daily Updates: Schedules a background cron event daily to download and refresh the GeoLite2 database mirror.<\/li>\n<li>Manual Database Utility: Admin dashboard options to check database file status, last-checked timestamps, and trigger manual updates on-demand.<\/li>\n<li>Resilient API Fallbacks: Seamless fallback integration with remote geolocation services (ip-api.com and ipinfo.io) if local files are missing or unreadable.<\/li>\n<li>Built-in Lockout Protection: Automatically registers and permanently allows the installer's country code upon activation to prevent accidental administrative lockouts.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder <code>block-account-create-login-by-country-grc<\/code> to the <code>\/wp-content\/plugins\/<\/code> directory, or upload the zip package via the WordPress plugins screen.<\/li>\n<li>Activate the plugin through the 'Plugins' menu in WordPress.<\/li>\n<li>Upon activation, the plugin automatically provisions the secure upload directory (<code>\/wp-content\/uploads\/block-account-create-login-by-country-grc-svn\/<\/code>), downloads the initial MaxMind database mirror, and schedules the daily update cron event.<\/li>\n<li>Navigate to <strong>Settings &gt; Country Login Blocker<\/strong> to customize your security rules.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"will%20i%20accidentally%20lock%20myself%20out%20of%20my%20website%3F\"><h3>Will I accidentally lock myself out of my website?<\/h3><\/dt>\n<dd><p>No. During activation, the plugin automatically detects your current country via your IP address and permanently permits that country code in the allowed list.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20the%20local%20maxmind%20database%20cannot%20be%20downloaded%3F\"><h3>What happens if the local MaxMind database cannot be downloaded?<\/h3><\/dt>\n<dd><p>The plugin features automatic fallback mechanisms using external API providers (<code>ip-api.com<\/code> and <code>ipinfo.io<\/code>) to ensure continuous geolocation protection. You can also manually trigger a download from the settings page.<\/p><\/dd>\n<dt id=\"which%20user%20roles%20can%20be%20restricted%3F\"><h3>Which user roles can be restricted?<\/h3><\/dt>\n<dd><p>You can select any registered user role on your WordPress installation (including custom roles, Administrator, Editor, Author, Shop Manager, etc.) via the settings dashboard.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.3.9<\/h4>\n\n<ul>\n<li>Initial stable release with local MaxMind .mmdb binary parsing, automated daily background mirror updates, settings panel, and fallback API integrations.<\/li>\n<\/ul>","raw_excerpt":"Blocks unauthorized role logins from restricted countries using local MaxMind databases with automatic daily mirror updates and a manual download butt &hellip;","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/279902","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=279902"}],"author":[{"embeddable":true,"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/robertutzu"}],"wp:attachment":[{"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=279902"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=279902"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=279902"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=279902"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=279902"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/sv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=279902"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}