Version Description
- Change: Some codefixes applied
Download this release
Release Info
Developer | iqpascal |
Plugin | iQ Block Country |
Version | 1.2.9 |
Comparing to | |
See all releases |
Code changes from version 1.2.8 to 1.2.9
- iq-block-country.php +1 -2
- libs/blockcountry-settings.php +9 -8
- readme.txt +33 -197
iq-block-country.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/*
|
3 |
Plugin Name: iQ Block Country
|
4 |
Plugin URI: https://www.webence.nl/plugins/iq-block-country-the-wordpress-plugin-that-blocks-countries-for-you/
|
5 |
-
Version: 1.2.
|
6 |
Author: Pascal
|
7 |
Author URI: https://www.webence.nl/
|
8 |
Description: Block visitors from visiting your website and backend website based on which country their IP address is from. The Maxmind GeoIP lite database is used for looking up from which country an ip address is from.
|
@@ -89,7 +89,6 @@ function iqblockcountry_get_ipaddress() {
|
|
89 |
elseif(array_key_exists('LOCAL_ADDR', $_SERVER))
|
90 |
$server_address = $_SERVER['LOCAL_ADDR'];
|
91 |
|
92 |
-
|
93 |
if ( isset($_SERVER['HTTP_CF_CONNECTING_IP']) && !empty($_SERVER['HTTP_CF_CONNECTING_IP']) ) {
|
94 |
$ip_address = $_SERVER['HTTP_CF_CONNECTING_IP'];
|
95 |
}
|
2 |
/*
|
3 |
Plugin Name: iQ Block Country
|
4 |
Plugin URI: https://www.webence.nl/plugins/iq-block-country-the-wordpress-plugin-that-blocks-countries-for-you/
|
5 |
+
Version: 1.2.9
|
6 |
Author: Pascal
|
7 |
Author URI: https://www.webence.nl/
|
8 |
Description: Block visitors from visiting your website and backend website based on which country their IP address is from. The Maxmind GeoIP lite database is used for looking up from which country an ip address is from.
|
89 |
elseif(array_key_exists('LOCAL_ADDR', $_SERVER))
|
90 |
$server_address = $_SERVER['LOCAL_ADDR'];
|
91 |
|
|
|
92 |
if ( isset($_SERVER['HTTP_CF_CONNECTING_IP']) && !empty($_SERVER['HTTP_CF_CONNECTING_IP']) ) {
|
93 |
$ip_address = $_SERVER['HTTP_CF_CONNECTING_IP'];
|
94 |
}
|
libs/blockcountry-settings.php
CHANGED
@@ -325,7 +325,8 @@ function iqblockcountry_settings_tools() {
|
|
325 |
{
|
326 |
if (iqblockcountry_is_valid_ipv4($_POST['ipaddress']) || iqblockcountry_is_valid_ipv6($_POST['ipaddress']))
|
327 |
{
|
328 |
-
|
|
|
329 |
$country = iqblockcountry_check_ipaddress($ip_address);
|
330 |
$countrylist = iqblockcountry_get_isocountries();
|
331 |
if ($country == "Unknown" || $country == "ipv6" || $country == "" || $country == "FALSE")
|
@@ -1266,7 +1267,7 @@ function iqblockcountry_settings_frontend()
|
|
1266 |
<?php
|
1267 |
$frontendwhitelist = get_option ( 'blockcountry_frontendwhitelist' );
|
1268 |
?>
|
1269 |
-
<textarea cols="70" rows="5" name="blockcountry_frontendwhitelist"><?php echo $frontendwhitelist; ?></textarea>
|
1270 |
</td></tr>
|
1271 |
<tr valign="top">
|
1272 |
<th width="30%"><?php _e('Frontend blacklist IPv4 and/or IPv6 addresses:', 'iq-block-country'); ?><br /><?php _e('Use a semicolon (;) to separate IP addresses', 'iq-block-country'); ?><br /><?php _e('This field accepts single IP addresses as well as ranges in CIDR format.', 'iq-block-country'); ?></th>
|
@@ -1274,7 +1275,7 @@ function iqblockcountry_settings_frontend()
|
|
1274 |
<?php
|
1275 |
$frontendblacklist = get_option ( 'blockcountry_frontendblacklist' );
|
1276 |
?>
|
1277 |
-
<textarea cols="70" rows="5" name="blockcountry_frontendblacklist"><?php echo $frontendblacklist; ?></textarea>
|
1278 |
</td></tr>
|
1279 |
<tr><td></td><td>
|
1280 |
<p class="submit"><input type="submit" class="button-primary"
|
@@ -1396,7 +1397,7 @@ function iqblockcountry_settings_backend()
|
|
1396 |
<?php
|
1397 |
$backendwhitelist = get_option ( 'blockcountry_backendwhitelist' );
|
1398 |
?>
|
1399 |
-
<textarea cols="70" rows="5" name="blockcountry_backendwhitelist"><?php echo $backendwhitelist; ?></textarea>
|
1400 |
</td></tr>
|
1401 |
<tr valign="top">
|
1402 |
<th width="30%"><?php _e('Backend blacklist IPv4 and/or IPv6 addresses:', 'iq-block-country'); ?><br /><?php _e('Use a semicolon (;) to separate IP addresses', 'iq-block-country'); ?><br /><?php _e('This field accepts single IP addresses as well as ranges in CIDR format.', 'iq-block-country'); ?></th>
|
@@ -1404,7 +1405,7 @@ function iqblockcountry_settings_backend()
|
|
1404 |
<?php
|
1405 |
$backendblacklist = get_option ( 'blockcountry_backendblacklist' );
|
1406 |
?>
|
1407 |
-
<textarea cols="70" rows="5" name="blockcountry_backendblacklist"><?php echo $backendblacklist; ?></textarea>
|
1408 |
</td></tr>
|
1409 |
<tr><td></td><td>
|
1410 |
<p class="submit"><input type="submit" class="button-primary"
|
@@ -1715,10 +1716,10 @@ function iqblockcountry_settings_logging()
|
|
1715 |
else
|
1716 |
{
|
1717 |
if (extension_loaded('mbstring')) {
|
1718 |
-
echo $mysqldate . '</td><td>' . $row->ipaddress . '</td><td>' . gethostbyaddr( $row->ipaddress ) . '</td><td>' . mb_strimwidth($row->url,0,75,'...') . '</td><td>' . $countryurl . $countrylist[$row->country] . '<td>';
|
1719 |
}
|
1720 |
else {
|
1721 |
-
echo $mysqldate . '</td><td>' . $row->ipaddress . '</td><td>' . gethostbyaddr( $row->ipaddress ) . '</td><td>' . $row->url . '</td><td>' . $countryurl . $countrylist[$row->country] . '<td>';
|
1722 |
}
|
1723 |
}
|
1724 |
if ($row->banned == "F") _e('Frontend', 'iq-block-country'); elseif ($row->banned == "A") { _e('Backend banlist','iq-block-country'); } elseif ($row->banned == "T") { _e('Backend & Backend banlist','iq-block-country'); } else { _e('Backend', 'iq-block-country'); }
|
@@ -1753,7 +1754,7 @@ function iqblockcountry_settings_logging()
|
|
1753 |
}
|
1754 |
else
|
1755 |
{
|
1756 |
-
echo "<tbody><tr><td>" . $row->ipaddress . "</td><td>" . gethostbyaddr($row->ipaddress) . "</td><td>" . $row->count . "</td></tr></tbody>";
|
1757 |
|
1758 |
}
|
1759 |
|
325 |
{
|
326 |
if (iqblockcountry_is_valid_ipv4($_POST['ipaddress']) || iqblockcountry_is_valid_ipv6($_POST['ipaddress']))
|
327 |
{
|
328 |
+
if (filter_var($_POST['ipaddress'], FILTER_VALIDATE_IP))
|
329 |
+
{ $ip_address = $_POST['ipaddress']; }
|
330 |
$country = iqblockcountry_check_ipaddress($ip_address);
|
331 |
$countrylist = iqblockcountry_get_isocountries();
|
332 |
if ($country == "Unknown" || $country == "ipv6" || $country == "" || $country == "FALSE")
|
1267 |
<?php
|
1268 |
$frontendwhitelist = get_option ( 'blockcountry_frontendwhitelist' );
|
1269 |
?>
|
1270 |
+
<textarea cols="70" rows="5" name="blockcountry_frontendwhitelist"><?php echo htmlspecialchars($frontendwhitelist); ?></textarea>
|
1271 |
</td></tr>
|
1272 |
<tr valign="top">
|
1273 |
<th width="30%"><?php _e('Frontend blacklist IPv4 and/or IPv6 addresses:', 'iq-block-country'); ?><br /><?php _e('Use a semicolon (;) to separate IP addresses', 'iq-block-country'); ?><br /><?php _e('This field accepts single IP addresses as well as ranges in CIDR format.', 'iq-block-country'); ?></th>
|
1275 |
<?php
|
1276 |
$frontendblacklist = get_option ( 'blockcountry_frontendblacklist' );
|
1277 |
?>
|
1278 |
+
<textarea cols="70" rows="5" name="blockcountry_frontendblacklist"><?php echo htmlspecialchars($frontendblacklist); ?></textarea>
|
1279 |
</td></tr>
|
1280 |
<tr><td></td><td>
|
1281 |
<p class="submit"><input type="submit" class="button-primary"
|
1397 |
<?php
|
1398 |
$backendwhitelist = get_option ( 'blockcountry_backendwhitelist' );
|
1399 |
?>
|
1400 |
+
<textarea cols="70" rows="5" name="blockcountry_backendwhitelist"><?php echo htmlspecialchars($backendwhitelist); ?></textarea>
|
1401 |
</td></tr>
|
1402 |
<tr valign="top">
|
1403 |
<th width="30%"><?php _e('Backend blacklist IPv4 and/or IPv6 addresses:', 'iq-block-country'); ?><br /><?php _e('Use a semicolon (;) to separate IP addresses', 'iq-block-country'); ?><br /><?php _e('This field accepts single IP addresses as well as ranges in CIDR format.', 'iq-block-country'); ?></th>
|
1405 |
<?php
|
1406 |
$backendblacklist = get_option ( 'blockcountry_backendblacklist' );
|
1407 |
?>
|
1408 |
+
<textarea cols="70" rows="5" name="blockcountry_backendblacklist"><?php echo htmlspecialchars($backendblacklist); ?></textarea>
|
1409 |
</td></tr>
|
1410 |
<tr><td></td><td>
|
1411 |
<p class="submit"><input type="submit" class="button-primary"
|
1716 |
else
|
1717 |
{
|
1718 |
if (extension_loaded('mbstring')) {
|
1719 |
+
echo $mysqldate . '</td><td>' . $row->ipaddress . '</td><td>' . htmlspecialchars(gethostbyaddr( $row->ipaddress )) . '</td><td>' . mb_strimwidth($row->url,0,75,'...') . '</td><td>' . $countryurl . $countrylist[$row->country] . '<td>';
|
1720 |
}
|
1721 |
else {
|
1722 |
+
echo $mysqldate . '</td><td>' . $row->ipaddress . '</td><td>' . htmlspecialchars(gethostbyaddr( $row->ipaddress )) . '</td><td>' . $row->url . '</td><td>' . $countryurl . $countrylist[$row->country] . '<td>';
|
1723 |
}
|
1724 |
}
|
1725 |
if ($row->banned == "F") _e('Frontend', 'iq-block-country'); elseif ($row->banned == "A") { _e('Backend banlist','iq-block-country'); } elseif ($row->banned == "T") { _e('Backend & Backend banlist','iq-block-country'); } else { _e('Backend', 'iq-block-country'); }
|
1754 |
}
|
1755 |
else
|
1756 |
{
|
1757 |
+
echo "<tbody><tr><td>" . $row->ipaddress . "</td><td>" . htmlspecialchars(gethostbyaddr($row->ipaddress)) . "</td><td>" . $row->count . "</td></tr></tbody>";
|
1758 |
|
1759 |
}
|
1760 |
|
readme.txt
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
=== iQ Block Country ===
|
2 |
Contributors: iqpascal
|
3 |
-
Donate link: https://
|
4 |
-
Tags: spam, block, country, comments, ban, geo, geo blocking, geo ip, block country, block countries, ban countries, ban country,
|
5 |
Requires at least: 3.5.2
|
6 |
-
Tested up to: 5.
|
7 |
-
Stable tag: 1.2.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
Requires PHP: 5.6
|
@@ -21,7 +21,7 @@ If you want to block rogue countries that cause issues like for instance hack at
|
|
21 |
|
22 |
Do you want secure your WordPress Admin backend site to only your country? Entirely possible! You can even block all countries and only allow your ip address.
|
23 |
|
24 |
-
And even if you block a country you can still allow certain visitors by
|
25 |
|
26 |
You can show blocked visitors a message which you can style by using CSS or you can redirect them to a page within your WordPress site. Or you can redirect the visitors to an external website.
|
27 |
|
@@ -30,11 +30,16 @@ You can (dis)allow visitors to blog articles, blog categories or pages or all co
|
|
30 |
Stop visitors from doing harmful things on your WordPress site or limit the countries that can access your blog. Add an additional layer of security to your WordPress site.
|
31 |
|
32 |
This plugin uses the GeoLite database from Maxmind. It has a 99.5% accuracy so that is pretty good for a free database. If you need higher accuracy you can buy a license from MaxMind directly.
|
33 |
-
If you cannot or do not want to download the GeoIP database from Maxmind you can use the GeoIP API website available on https://
|
34 |
|
35 |
If you want to use the GeoLite database from Maxmind you will have to download the GeoIP database from MaxMind directly and upload it to your site.
|
36 |
The Wordpress license does not allow this plugin to download the MaxMind Geo database for you.
|
37 |
|
|
|
|
|
|
|
|
|
|
|
38 |
Do you need help with this plugin? Please email support@webence.nl.
|
39 |
|
40 |
= GDPR Information =
|
@@ -92,7 +97,6 @@ This however does not mean this plugin does not work, it just means somebody tri
|
|
92 |
|
93 |
If you are worried this plugin does not work you could try to block your own country or your own ip address and afterwards visit your frontend website and see if it actually works. Also if you have access to the logfiles of the webserver that hosts your website you can see that these visitors are actually denied with a HTTP error 403.
|
94 |
|
95 |
-
|
96 |
= This plugin does not work, I blocked a country and still see visitors! =
|
97 |
|
98 |
Well, this plugin does in fact work but is limited to the data MaxMind provides. Also in your statistics software or logfiles you probably will see log entries from countries that you have blocked. See the "How come I still see visitors..." FAQ for that.
|
@@ -237,6 +241,27 @@ be used.
|
|
237 |
|
238 |
== Changelog ==
|
239 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
240 |
= 1.2.8 =
|
241 |
|
242 |
* Bugfix: Checking the IP address on the tools tab gave wrong information about countries being blocked if the "block countries below" function was used. This had no effect on the actual denying of visitors.
|
@@ -294,197 +319,8 @@ be used.
|
|
294 |
* New: Added support for GeoIP2 country database
|
295 |
* New: Added Pinterest as service
|
296 |
|
297 |
-
= 1.1.51 =
|
298 |
-
|
299 |
-
* New: Added new GeoIP API server in Florida
|
300 |
-
* New: Added new GeoIP API server in Asia
|
301 |
-
|
302 |
-
= 1.1.50 =
|
303 |
-
|
304 |
-
* Bugfix: Fix for SQL error in rare conditions
|
305 |
-
* New: Added AppleBot, Feedburner and Alexa to the services you can allow
|
306 |
-
* Change: Added some more work for the upcoming GeoIP2 support.
|
307 |
-
|
308 |
-
= 1.1.49 =
|
309 |
-
|
310 |
-
* Change: Changed when the buffer is flushed (if selected) (Thanks to Nextendweb)
|
311 |
-
* Change: Changed cleanup on debug logging table.
|
312 |
-
|
313 |
-
= 1.1.48 =
|
314 |
-
|
315 |
-
* Bugfix: Fixed small bug
|
316 |
-
|
317 |
-
= 1.1.47 =
|
318 |
-
|
319 |
-
* Change: You can now also enter IP Ranges in the black & whitelist in CIDR format.
|
320 |
-
* Change: Altered logging clean up a little bit
|
321 |
-
|
322 |
-
= 1.1.46 =
|
323 |
-
|
324 |
-
* Bugfix: Added extra aiwop checking due to a notice error.
|
325 |
-
* Change: Renamed Search Engines tab to Services tab as more non-search engines are added to the list.
|
326 |
-
* New: Added Feedly to services.
|
327 |
-
* New: Added Google Feed to services.
|
328 |
-
* New: Changes are made for supporting the new GeoIP2 database format of MaxMind.
|
329 |
-
|
330 |
-
= 1.1.45 =
|
331 |
-
|
332 |
-
* Bugfix: (un)blocking individual pages and categories did not work anymore.
|
333 |
-
|
334 |
-
= 1.1.44 =
|
335 |
-
|
336 |
-
* Change: Removed Asia API Key server.
|
337 |
-
* Change: Small change when frontend blocking is fired up.
|
338 |
-
* Change: Adds server ip address (the IP address where your website is hosted) to the frontend whitelist so if you block the country your website is hosted it can still access wp-cron for instance.
|
339 |
-
|
340 |
-
= 1.1.43 =
|
341 |
-
|
342 |
-
* Change: Altered address for Asia API Key server
|
343 |
-
|
344 |
-
= 1.1.42 =
|
345 |
-
|
346 |
-
* Bugfix: Temp fix for some people who had issues being blocked from the backend.
|
347 |
-
|
348 |
-
= 1.1.41 =
|
349 |
-
|
350 |
-
* Change: Removed unnecessary code.
|
351 |
-
* New: New GeoIP API location added at the west coast of the United States
|
352 |
-
* New: Limit the number of days the logging is kept between 7 days and 90 days.
|
353 |
-
* New: Disable host lookup on the logging tab. In some circumstances this may speed up the logging tab.
|
354 |
-
|
355 |
-
= 1.1.40 =
|
356 |
-
|
357 |
-
* Bugfix: Fix for bug in not blocking/allowing post types.
|
358 |
-
* New: Moved GeoIP API to secure https
|
359 |
-
* New: Logging DB optimization (Thanks to Arjen Lentz)
|
360 |
-
* Change: Changed support option from forum to mail.
|
361 |
-
|
362 |
-
= 1.1.38 =
|
363 |
-
|
364 |
-
* Bugfix: Only shows warning of incompatible caching plugin if frontend blocking is on.
|
365 |
-
* Change: Better error handling
|
366 |
-
|
367 |
-
= 1.1.37 =
|
368 |
-
|
369 |
-
* Change: Small adjustment to prevent wp_mail declaration as much as possible.
|
370 |
-
|
371 |
-
= 1.1.36 =
|
372 |
-
|
373 |
-
* Bugfix: Smashed bug on backend
|
374 |
-
|
375 |
-
= 1.1.35 =
|
376 |
-
|
377 |
-
* Change: Added WPRocket to list of caching plugins that are not compatible with iQ Block Country (thanks to Mike Reed for supplying the info)
|
378 |
-
* New: Added Baidu to Search Engines list
|
379 |
-
* New: Added Google Site Verification to the search engines list
|
380 |
-
* New: Added Google Search Console to the search engines list
|
381 |
-
* Change: Only displays warning about incompatible caching plugins in case frontend blocking is selected.
|
382 |
-
* New: You can now also block individual post tags
|
383 |
-
* Change: Fixed small security issue with downloading the statistics as CSV file (Thanks to Benjamin Pick for reporting)
|
384 |
-
|
385 |
-
= 1.1.33 =
|
386 |
-
|
387 |
-
* Bugfix: Bug smashed on tag page
|
388 |
-
|
389 |
-
= 1.1.32 =
|
390 |
-
|
391 |
-
* Bugfix: Bug smashed on tag page
|
392 |
-
|
393 |
-
= 1.1.31 =
|
394 |
-
|
395 |
-
* Change: Small changes in GeoIP API calls
|
396 |
-
* New: A warning is displayed for known caching plugins that ignore the no caching headers.
|
397 |
-
* Change: Small changes
|
398 |
-
* Change: Moved some of the urls to https, more to follow.
|
399 |
-
* New: Added option to block / unblock tag pages.
|
400 |
-
|
401 |
-
= 1.1.30 =
|
402 |
-
|
403 |
-
* Change: Added new GeoIP API location for Asia-Pacific region.
|
404 |
-
* Change: Added some missing country icons.
|
405 |
-
|
406 |
-
= 1.1.29 =
|
407 |
-
|
408 |
-
* Change: Small changes in GeoIP API calls
|
409 |
-
* New: Added database information to tools tab.
|
410 |
-
* New: Added support for rename wp-login plugin
|
411 |
-
|
412 |
-
= 1.1.28 =
|
413 |
-
|
414 |
-
* Bugfix: Altered mysql_get_client_info check as in some setups this gave a fatal error.
|
415 |
-
* New: Added Wordpress Jetpack as search engine. You can allow Jetpack to communicate with your site if you have Jetpack installed.
|
416 |
-
* New: Added option to allow admin-ajax.php visits if you use backend blocking.
|
417 |
-
|
418 |
-
= 1.1.27 =
|
419 |
-
|
420 |
-
* Bugfix: Fixed small bug
|
421 |
-
|
422 |
-
= 1.1.26 =
|
423 |
-
|
424 |
-
* New: xmlrpc.php is now handled the same way as other backend pages.
|
425 |
-
* Change: Updated chosen library to latest version.
|
426 |
-
* Change: Added a (de)select all countries to the backend en frontend country list.
|
427 |
-
* Change: Changed order of how the plugin detects the ip address.
|
428 |
-
* Change: Added detection of more header info that can contain the proper ip address
|
429 |
-
* New: Added support forum to the site.
|
430 |
-
* Change: Added download urls on database is too old message.
|
431 |
-
|
432 |
-
= 1.1.25 =
|
433 |
-
|
434 |
-
* Bugfix: Altered checking for Simple Security Firewall
|
435 |
-
|
436 |
-
= 1.1.24 =
|
437 |
-
|
438 |
-
* New: Added support for Lockdown WordPress Admin
|
439 |
-
* New: Added support for WordPress Security Firewall (Simple Security Firewall)
|
440 |
-
* Change: Various small changes
|
441 |
-
|
442 |
-
= 1.1.23 =
|
443 |
-
|
444 |
-
* Bugfix: Fixed bug if cURL was not present in PHP version
|
445 |
-
* New: When local GeoIP database present it checks if database is not older than 3 months and alerts users in a non-intrusive way.
|
446 |
-
|
447 |
-
= 1.1.22 =
|
448 |
-
|
449 |
-
* Bugfix: Category bug squashed
|
450 |
-
* Change: Altered text-domain
|
451 |
-
* New: Added export of all logging data to csv. This exports max of 1 month of blocked visitors from frontend & backend.
|
452 |
-
|
453 |
-
= 1.1.21 =
|
454 |
-
|
455 |
-
* Change: Minor improvements
|
456 |
-
* New: Added check to detect closest location for GeoIP API users
|
457 |
-
* Bugfix: Fixed an error if you lookup an ip on the tools tab while using the inverse function it sometimes would not display correctly if a country was blocked or not.
|
458 |
-
* New: Added support for All in one WP Security Change Login URL. If you changed your login URL iQ Block Country will detect this setting and use it with your backend block settings.
|
459 |
-
|
460 |
-
= 1.1.20 =
|
461 |
-
|
462 |
-
* New: Added Google Ads to search engines
|
463 |
-
* New: Added Redirect URL (Basic code supplied by Stefan)
|
464 |
-
* New: Added inverse selection on frontend. (Basic code supplied by Stefan)
|
465 |
-
* New: Added inverse selection on backend.
|
466 |
-
* New: Validated input on the tools tab.
|
467 |
-
|
468 |
-
= 1.1.19 =
|
469 |
-
|
470 |
-
* Bugfix: Check if MaxMind databases actually exist.
|
471 |
-
* New: Unzip MaxMind database(s) if gzip file is found.
|
472 |
-
* New: Block post types
|
473 |
-
* New: Added option to select if you want to block your search page.
|
474 |
-
* New: When (re)activating the plugin it now adds the IP address of the person activating the plugin to the backend whitelist if the whitelist is currently empty.
|
475 |
-
|
476 |
-
= 1.1.18 =
|
477 |
-
|
478 |
-
* Change: Changed working directory for the GeoIP database to /wp-content/uploads
|
479 |
-
|
480 |
-
= 1.1.17 =
|
481 |
-
|
482 |
-
* Change: Due to a conflict of the license where Wordpress is released under and the license the MaxMind databases are released under I was forced to remove all auto downloads of the GeoIP databases. You now have to manually download the databases and upload them yourself.
|
483 |
-
* New: Added Webence GeoIP API lookup. See https://geoip.webence.nl/ for more information about this API.
|
484 |
-
|
485 |
-
|
486 |
== Upgrade Notice ==
|
487 |
|
488 |
= 1.1.19 =
|
489 |
|
490 |
-
This plugin no longer downloads the MaxMind database. You have to download manually or use the GeoIP API.
|
1 |
=== iQ Block Country ===
|
2 |
Contributors: iqpascal
|
3 |
+
Donate link: https://webence.nl/plugins/donate
|
4 |
+
Tags: spam, block, country, comments, ban, geo, geo blocking, geo ip, block country, block countries, ban countries, ban country, allow list, block list, security
|
5 |
Requires at least: 3.5.2
|
6 |
+
Tested up to: 5.8.1
|
7 |
+
Stable tag: 1.2.12
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
Requires PHP: 5.6
|
21 |
|
22 |
Do you want secure your WordPress Admin backend site to only your country? Entirely possible! You can even block all countries and only allow your ip address.
|
23 |
|
24 |
+
And even if you block a country you can still allow certain visitors by putting their ip address on the allow list just like you can allow a country but put ip addresses on the block list from that country.
|
25 |
|
26 |
You can show blocked visitors a message which you can style by using CSS or you can redirect them to a page within your WordPress site. Or you can redirect the visitors to an external website.
|
27 |
|
30 |
Stop visitors from doing harmful things on your WordPress site or limit the countries that can access your blog. Add an additional layer of security to your WordPress site.
|
31 |
|
32 |
This plugin uses the GeoLite database from Maxmind. It has a 99.5% accuracy so that is pretty good for a free database. If you need higher accuracy you can buy a license from MaxMind directly.
|
33 |
+
If you cannot or do not want to download the GeoIP database from Maxmind you can use the GeoIP API website available on https://webence.nl/geoip-api/
|
34 |
|
35 |
If you want to use the GeoLite database from Maxmind you will have to download the GeoIP database from MaxMind directly and upload it to your site.
|
36 |
The Wordpress license does not allow this plugin to download the MaxMind Geo database for you.
|
37 |
|
38 |
+
Please be aware that although this plugin can help you greatly with reducing the number of 'bad' visitors on your website it is not fool proof and those who really want to visit your site may find a away.
|
39 |
+
This is not a security issue but a simple fact of today. Nobody can guarantee you 100% security as it is a constant battle between the good guys and the bad guys.
|
40 |
+
|
41 |
+
If you are sure your webhosting or yourself does not use any form of caching or proxying we recommend setting the "Override IP information" on the Home tab to REMOTE_ADDR
|
42 |
+
|
43 |
Do you need help with this plugin? Please email support@webence.nl.
|
44 |
|
45 |
= GDPR Information =
|
97 |
|
98 |
If you are worried this plugin does not work you could try to block your own country or your own ip address and afterwards visit your frontend website and see if it actually works. Also if you have access to the logfiles of the webserver that hosts your website you can see that these visitors are actually denied with a HTTP error 403.
|
99 |
|
|
|
100 |
= This plugin does not work, I blocked a country and still see visitors! =
|
101 |
|
102 |
Well, this plugin does in fact work but is limited to the data MaxMind provides. Also in your statistics software or logfiles you probably will see log entries from countries that you have blocked. See the "How come I still see visitors..." FAQ for that.
|
241 |
|
242 |
== Changelog ==
|
243 |
|
244 |
+
= 1.2.12 =
|
245 |
+
|
246 |
+
* Change: Added/Changed some services.
|
247 |
+
* Bugfix: Security issue fixed which could only be abused by people with administrator rights.
|
248 |
+
|
249 |
+
= 1.2.11 =
|
250 |
+
|
251 |
+
* Change: Minor UI fix
|
252 |
+
* Change: Added some more checking if the visitors IP is an actual IPv4 or IPv6 address
|
253 |
+
* Change: Updated README
|
254 |
+
|
255 |
+
= 1.2.10 =
|
256 |
+
|
257 |
+
* Change: Changed whitelist/blacklist to allow list / block list.
|
258 |
+
* Change: Removed Paris as GeoIP location
|
259 |
+
* Change: Added website server address to allow list of the backend to ensure certain WordPress functions keep working if you block the country your website is hosted from the backend.
|
260 |
+
|
261 |
+
= 1.2.9 =
|
262 |
+
|
263 |
+
* Change: Some codefixes applied
|
264 |
+
|
265 |
= 1.2.8 =
|
266 |
|
267 |
* Bugfix: Checking the IP address on the tools tab gave wrong information about countries being blocked if the "block countries below" function was used. This had no effect on the actual denying of visitors.
|
319 |
* New: Added support for GeoIP2 country database
|
320 |
* New: Added Pinterest as service
|
321 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
322 |
== Upgrade Notice ==
|
323 |
|
324 |
= 1.1.19 =
|
325 |
|
326 |
+
This plugin no longer downloads the MaxMind database. You have to download manually or use the GeoIP API.
|