Version Description
Download this release
Release Info
Developer | bmarshall511 |
Plugin | WordPress Zero Spam |
Version | 4.1.0 |
Comparing to | |
See all releases |
Code changes from version 4.0.0 to 4.1.0
- addons/buddypress.php +30 -0
- addons/contact-form-7.php +30 -0
- addons/gravity-forms.php +30 -0
- addons/ninja-forms.php +30 -0
- addons/wpforms.php +36 -0
- inc/admin.php +75 -1
- inc/helpers.php +26 -3
- readme.txt +30 -7
- wordpress-zero-spam.php +7 -2
addons/buddypress.php
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Handles checking submitted BuddyPress registrations
|
4 |
+
*
|
5 |
+
* @package WordPressZeroSpam
|
6 |
+
* @since 4.1.0
|
7 |
+
*/
|
8 |
+
|
9 |
+
/**
|
10 |
+
* Validation for BuddyPress registrations
|
11 |
+
*/
|
12 |
+
if ( ! function_exists( 'wpzerospam_bp_signup_validate' ) ) {
|
13 |
+
function wpzerospam_bp_signup_validate() {
|
14 |
+
$options = wpzerospam_options();
|
15 |
+
|
16 |
+
if (
|
17 |
+
'enabled' != $options['verify_bp_registrations'] ||
|
18 |
+
is_user_logged_in() ||
|
19 |
+
wpzerospam_key_check()
|
20 |
+
) {
|
21 |
+
return;
|
22 |
+
}
|
23 |
+
|
24 |
+
do_action( 'wpzerospam_bp_registration_spam' );
|
25 |
+
|
26 |
+
wpzerospam_log_spam( 'bp_registration' );
|
27 |
+
wpzerospam_spam_detected( 'bp_registration' );
|
28 |
+
}
|
29 |
+
}
|
30 |
+
add_action( 'bp_signup_validate', 'wpzerospam_bp_signup_validate' );
|
addons/contact-form-7.php
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Handles checking submitted Contact Form 7 forms for spam
|
4 |
+
*
|
5 |
+
* @package WordPressZeroSpam
|
6 |
+
* @since 4.1.0
|
7 |
+
*/
|
8 |
+
|
9 |
+
/**
|
10 |
+
* Validation for CF7 submissions
|
11 |
+
*/
|
12 |
+
if ( ! function_exists( 'wpzerospam_wpcf7_validate' ) ) {
|
13 |
+
function wpzerospam_wpcf7_validate( $result ) {
|
14 |
+
$options = wpzerospam_options();
|
15 |
+
|
16 |
+
if (
|
17 |
+
'enabled' != $options['verify_cf7'] ||
|
18 |
+
is_user_logged_in() ||
|
19 |
+
wpzerospam_key_check()
|
20 |
+
) {
|
21 |
+
return $result;
|
22 |
+
}
|
23 |
+
|
24 |
+
do_action( 'wpzerospam_cf7_spam' );
|
25 |
+
|
26 |
+
wpzerospam_log_spam( 'cf7', $result );
|
27 |
+
wpzerospam_spam_detected( 'cf7', $result );
|
28 |
+
}
|
29 |
+
}
|
30 |
+
add_action( 'wpcf7_validate', 'wpzerospam_wpcf7_validate' );
|
addons/gravity-forms.php
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Handles checking submitted Gravity Forms forms for spam
|
4 |
+
*
|
5 |
+
* @package WordPressZeroSpam
|
6 |
+
* @since 4.1.0
|
7 |
+
*/
|
8 |
+
|
9 |
+
/**
|
10 |
+
* Validation for CF7 submissions
|
11 |
+
*/
|
12 |
+
if ( ! function_exists( 'wpzerospam_wpcf7_validate' ) ) {
|
13 |
+
function wpzerospam_wpcf7_validate( $form ) {
|
14 |
+
$options = wpzerospam_options();
|
15 |
+
|
16 |
+
if (
|
17 |
+
'enabled' != $options['verify_gform'] ||
|
18 |
+
is_user_logged_in() ||
|
19 |
+
wpzerospam_key_check()
|
20 |
+
) {
|
21 |
+
return;
|
22 |
+
}
|
23 |
+
|
24 |
+
do_action( 'wpzerospam_gform_spam' );
|
25 |
+
|
26 |
+
wpzerospam_log_spam( 'gform', $form );
|
27 |
+
wpzerospam_spam_detected( 'gform', $form );
|
28 |
+
}
|
29 |
+
}
|
30 |
+
add_action( 'gform_pre_submission', 'wpzerospam_gform_validate' );
|
addons/ninja-forms.php
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Handles checking submitted Ninja Forms for spam
|
4 |
+
*
|
5 |
+
* @package WordPressZeroSpam
|
6 |
+
* @since 4.1.0
|
7 |
+
*/
|
8 |
+
|
9 |
+
/**
|
10 |
+
* Validation for Ninja Forms submissions
|
11 |
+
*/
|
12 |
+
if ( ! function_exists( 'wpzerospam_ninja_forms_validate' ) ) {
|
13 |
+
function wpzerospam_ninja_forms_validate() {
|
14 |
+
$options = wpzerospam_options();
|
15 |
+
|
16 |
+
if (
|
17 |
+
'enabled' != $options['verify_ninja_forms'] ||
|
18 |
+
is_user_logged_in() ||
|
19 |
+
wpzerospam_key_check()
|
20 |
+
) {
|
21 |
+
return;
|
22 |
+
}
|
23 |
+
|
24 |
+
do_action( 'wpzerospam_ninja_forms_spam' );
|
25 |
+
|
26 |
+
wpzerospam_log_spam( 'ninja_forms' );
|
27 |
+
wpzerospam_spam_detected( 'ninja_forms' );
|
28 |
+
}
|
29 |
+
}
|
30 |
+
add_action( 'ninja_forms_process', 'wpzerospam_ninja_forms_validate' );
|
addons/wpforms.php
ADDED
@@ -0,0 +1,36 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Handles checking submitted WPForms submissions
|
4 |
+
*
|
5 |
+
* @package WordPressZeroSpam
|
6 |
+
* @since 4.1.0
|
7 |
+
*/
|
8 |
+
|
9 |
+
/**
|
10 |
+
* Validation for WPForms submissions
|
11 |
+
*/
|
12 |
+
if ( ! function_exists( 'wpzerospam_wpforms_process_honeypot' ) ) {
|
13 |
+
function wpzerospam_wpforms_process_honeypot( $honeypot, $fields, $entry, $form_data ) {
|
14 |
+
$options = wpzerospam_options();
|
15 |
+
|
16 |
+
if (
|
17 |
+
'enabled' != $options['verify_wpforms'] ||
|
18 |
+
is_user_logged_in() ||
|
19 |
+
wpzerospam_key_check()
|
20 |
+
) {
|
21 |
+
return $honeypot;
|
22 |
+
}
|
23 |
+
|
24 |
+
do_action( 'wpzerospam_wpform_spam' );
|
25 |
+
|
26 |
+
$data = [
|
27 |
+
'honeypot' => $honeypot,
|
28 |
+
'fields' => $fields,
|
29 |
+
'entry' => $entry,
|
30 |
+
'form_data' => $form_data
|
31 |
+
];
|
32 |
+
wpzerospam_log_spam( 'wpform', $data );
|
33 |
+
wpzerospam_spam_detected( 'wpform', $data );
|
34 |
+
}
|
35 |
+
}
|
36 |
+
add_filter( 'wpforms_process_honeypot', 'wpzerospam_wpforms_process_honeypot', 10, 4 );
|
inc/admin.php
CHANGED
@@ -44,7 +44,16 @@ function wpzerospam_admin_init() {
|
|
44 |
'label_for' => 'blocked_redirect_url',
|
45 |
'type' => 'url',
|
46 |
'class' => 'regular-text',
|
47 |
-
'desc' => '
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
48 |
'placeholder' => 'e.g. https://google.com'
|
49 |
]);
|
50 |
|
@@ -81,6 +90,71 @@ function wpzerospam_admin_init() {
|
|
81 |
]
|
82 |
]);
|
83 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
// Toggle logging of blocked IPs
|
85 |
add_settings_field( 'log_blocked_ips', __( 'Log Blocked IPs', 'wpzerospam' ), 'wpzerospam_field_cb', 'wpzerospam', 'wpzerospam_ip_blocks', [
|
86 |
'label_for' => 'log_blocked_ips',
|
44 |
'label_for' => 'blocked_redirect_url',
|
45 |
'type' => 'url',
|
46 |
'class' => 'regular-text',
|
47 |
+
'desc' => 'URL blocked users will be taken to.',
|
48 |
+
'placeholder' => 'e.g. https://google.com'
|
49 |
+
]);
|
50 |
+
|
51 |
+
// Redirect URL for spam detections
|
52 |
+
add_settings_field( 'spam_redirect_url', __( 'Redirect for Spam', 'wpzerospam' ), 'wpzerospam_field_cb', 'wpzerospam', 'wpzerospam_general_settings', [
|
53 |
+
'label_for' => 'spam_redirect_url',
|
54 |
+
'type' => 'url',
|
55 |
+
'class' => 'regular-text',
|
56 |
+
'desc' => 'URL users will be taken to when a spam submission is detected.',
|
57 |
'placeholder' => 'e.g. https://google.com'
|
58 |
]);
|
59 |
|
90 |
]
|
91 |
]);
|
92 |
|
93 |
+
// Contact Form 7 spam check
|
94 |
+
if ( is_plugin_active( 'contact-form-7/wp-contact-form-7.php' ) ) {
|
95 |
+
add_settings_field( 'verify_cf7', __( 'Verify CF7 Submissions', 'wpzerospam' ), 'wpzerospam_field_cb', 'wpzerospam', 'wpzerospam_spam_checks', [
|
96 |
+
'label_for' => 'verify_cf7',
|
97 |
+
'type' => 'checkbox',
|
98 |
+
'multi' => false,
|
99 |
+
'desc' => 'Enables spam detection for Contact Form 7 submissions.',
|
100 |
+
'options' => [
|
101 |
+
'enabled' => __( 'Enabled', 'wpzerospam' )
|
102 |
+
]
|
103 |
+
]);
|
104 |
+
}
|
105 |
+
|
106 |
+
// Gravity Forms spam check
|
107 |
+
if ( is_plugin_active( 'gravityforms/gravityforms.php' ) ) {
|
108 |
+
add_settings_field( 'verify_gform', __( 'Verify Gravity Forms Submissions', 'wpzerospam' ), 'wpzerospam_field_cb', 'wpzerospam', 'wpzerospam_spam_checks', [
|
109 |
+
'label_for' => 'verify_gform',
|
110 |
+
'type' => 'checkbox',
|
111 |
+
'multi' => false,
|
112 |
+
'desc' => 'Enables spam detection for Gravity Forms submissions.',
|
113 |
+
'options' => [
|
114 |
+
'enabled' => __( 'Enabled', 'wpzerospam' )
|
115 |
+
]
|
116 |
+
]);
|
117 |
+
}
|
118 |
+
|
119 |
+
// Ninja Forms spam check
|
120 |
+
if ( is_plugin_active( 'ninja-forms/ninja-forms.php' ) ) {
|
121 |
+
add_settings_field( 'verify_ninja_forms', __( 'Verify Ninja Forms Submissions', 'wpzerospam' ), 'wpzerospam_field_cb', 'wpzerospam', 'wpzerospam_spam_checks', [
|
122 |
+
'label_for' => 'verify_ninja_forms',
|
123 |
+
'type' => 'checkbox',
|
124 |
+
'multi' => false,
|
125 |
+
'desc' => 'Enables spam detection for Ninja Forms submissions.',
|
126 |
+
'options' => [
|
127 |
+
'enabled' => __( 'Enabled', 'wpzerospam' )
|
128 |
+
]
|
129 |
+
]);
|
130 |
+
}
|
131 |
+
|
132 |
+
// BuddyPress registrations spam check
|
133 |
+
if ( function_exists( 'bp_is_active' ) ) {
|
134 |
+
add_settings_field( 'verify_bp_registrations', __( 'Verify BuddyPress Registrations', 'wpzerospam' ), 'wpzerospam_field_cb', 'wpzerospam', 'wpzerospam_spam_checks', [
|
135 |
+
'label_for' => 'verify_bp_registrations',
|
136 |
+
'type' => 'checkbox',
|
137 |
+
'multi' => false,
|
138 |
+
'desc' => 'Enables spam detection for BuddyPress registrations.',
|
139 |
+
'options' => [
|
140 |
+
'enabled' => __( 'Enabled', 'wpzerospam' )
|
141 |
+
]
|
142 |
+
]);
|
143 |
+
}
|
144 |
+
|
145 |
+
// WPForms spam check
|
146 |
+
if ( is_plugin_active( 'wpforms/wpforms.php' ) || is_plugin_active( 'wpforms-lite/wpforms.php' ) ) {
|
147 |
+
add_settings_field( 'verify_wpforms', __( 'Verify WPForms Submissions', 'wpzerospam' ), 'wpzerospam_field_cb', 'wpzerospam', 'wpzerospam_spam_checks', [
|
148 |
+
'label_for' => 'verify_wpforms',
|
149 |
+
'type' => 'checkbox',
|
150 |
+
'multi' => false,
|
151 |
+
'desc' => 'Enables spam detection for WPForms submissions.',
|
152 |
+
'options' => [
|
153 |
+
'enabled' => __( 'Enabled', 'wpzerospam' )
|
154 |
+
]
|
155 |
+
]);
|
156 |
+
}
|
157 |
+
|
158 |
// Toggle logging of blocked IPs
|
159 |
add_settings_field( 'log_blocked_ips', __( 'Log Blocked IPs', 'wpzerospam' ), 'wpzerospam_field_cb', 'wpzerospam', 'wpzerospam_ip_blocks', [
|
160 |
'label_for' => 'log_blocked_ips',
|
inc/helpers.php
CHANGED
@@ -10,10 +10,10 @@
|
|
10 |
* Handles what happens when spam is detected
|
11 |
*/
|
12 |
if ( ! function_exists( 'wpzerospam_spam_detected' ) ) {
|
13 |
-
function wpzerospam_spam_detected( $type, $data ) {
|
14 |
$options = wpzerospam_options();
|
15 |
|
16 |
-
wp_redirect( esc_url( $options['
|
17 |
exit();
|
18 |
}
|
19 |
}
|
@@ -35,7 +35,7 @@ if ( ! function_exists( 'wpzerospam_key_check' ) ) {
|
|
35 |
* Create a log entry if logging is enabled
|
36 |
*/
|
37 |
if ( ! function_exists( 'wpzerospam_log_spam' ) ) {
|
38 |
-
function wpzerospam_log_spam( $type, $data ) {
|
39 |
$options = wpzerospam_options();
|
40 |
|
41 |
if ( 'enabled' != $options['log_spam'] ) {
|
@@ -102,13 +102,36 @@ if ( ! function_exists( 'wpzerospam_validate_submission' ) ) {
|
|
102 |
*/
|
103 |
if ( ! function_exists( 'wpzerospam_options' ) ) {
|
104 |
function wpzerospam_options() {
|
|
|
|
|
105 |
$options = get_option( 'wpzerospam' );
|
106 |
|
107 |
if ( empty( $options['blocked_redirect_url'] ) ) { $options['blocked_redirect_url'] = 'https://www.google.com'; }
|
|
|
108 |
if ( empty( $options['log_spam'] ) ) { $options['log_spam'] = 'disabled'; }
|
109 |
if ( empty( $options['verify_comments'] ) ) { $options['verify_comments'] = 'enabled'; }
|
110 |
if ( empty( $options['verify_registrations'] ) ) { $options['verify_registrations'] = 'enabled'; }
|
111 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
112 |
return $options;
|
113 |
}
|
114 |
}
|
10 |
* Handles what happens when spam is detected
|
11 |
*/
|
12 |
if ( ! function_exists( 'wpzerospam_spam_detected' ) ) {
|
13 |
+
function wpzerospam_spam_detected( $type, $data = [] ) {
|
14 |
$options = wpzerospam_options();
|
15 |
|
16 |
+
wp_redirect( esc_url( $options['spam_redirect_url'] ) );
|
17 |
exit();
|
18 |
}
|
19 |
}
|
35 |
* Create a log entry if logging is enabled
|
36 |
*/
|
37 |
if ( ! function_exists( 'wpzerospam_log_spam' ) ) {
|
38 |
+
function wpzerospam_log_spam( $type, $data = [] ) {
|
39 |
$options = wpzerospam_options();
|
40 |
|
41 |
if ( 'enabled' != $options['log_spam'] ) {
|
102 |
*/
|
103 |
if ( ! function_exists( 'wpzerospam_options' ) ) {
|
104 |
function wpzerospam_options() {
|
105 |
+
include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
|
106 |
+
|
107 |
$options = get_option( 'wpzerospam' );
|
108 |
|
109 |
if ( empty( $options['blocked_redirect_url'] ) ) { $options['blocked_redirect_url'] = 'https://www.google.com'; }
|
110 |
+
if ( empty( $options['spam_redirect_url'] ) ) { $options['spam_redirect_url'] = 'https://www.google.com'; }
|
111 |
if ( empty( $options['log_spam'] ) ) { $options['log_spam'] = 'disabled'; }
|
112 |
if ( empty( $options['verify_comments'] ) ) { $options['verify_comments'] = 'enabled'; }
|
113 |
if ( empty( $options['verify_registrations'] ) ) { $options['verify_registrations'] = 'enabled'; }
|
114 |
|
115 |
+
if ( empty( $options['verify_cf7'] ) && is_plugin_active( 'contact-form-7/wp-contact-form-7.php' ) ) {
|
116 |
+
$options['verify_cf7'] = 'enabled';
|
117 |
+
}
|
118 |
+
|
119 |
+
if ( empty( $options['verify_gforms'] ) && is_plugin_active( 'gravityforms/gravityforms.php' ) ) {
|
120 |
+
$options['verify_gforms'] = 'enabled';
|
121 |
+
}
|
122 |
+
|
123 |
+
if ( empty( $options['verify_ninja_forms'] ) && is_plugin_active( 'ninja-forms/ninja-forms.php' ) ) {
|
124 |
+
$options['verify_ninja_forms'] = 'enabled';
|
125 |
+
}
|
126 |
+
|
127 |
+
if ( empty( $options['verify_bp_registrations'] ) && function_exists( 'bp_is_active' ) ) {
|
128 |
+
$options['verify_bp_registrations'] = 'enabled';
|
129 |
+
}
|
130 |
+
|
131 |
+
if ( empty( $options['verify_wpforms'] ) && ( is_plugin_active( 'wpforms/wpforms.php' ) || is_plugin_active( 'wpforms-lite/wpforms.php' ) ) ) {
|
132 |
+
$options['verify_wpforms'] = 'enabled';
|
133 |
+
}
|
134 |
+
|
135 |
return $options;
|
136 |
}
|
137 |
}
|
readme.txt
CHANGED
@@ -5,7 +5,7 @@ Donate link: https://benmarshall.me
|
|
5 |
Requires at least: 5.2
|
6 |
Tested up to: 5.4.2
|
7 |
Requires PHP: 7.1
|
8 |
-
Stable tag: 4.
|
9 |
License: GNU GPLv3
|
10 |
License URI: https://choosealicense.com/licenses/gpl-3.0/
|
11 |
|
@@ -13,7 +13,7 @@ WordPress Zero Spam makes blocking spammers a cinch. Install, activate and enjoy
|
|
13 |
|
14 |
== Description ==
|
15 |
|
16 |
-
Why force users to prove that they're humans by filling out captchas? Let bots prove they're not bots with the [WordPress Zero Spam plugin](https://benmarshall.me/wordpress-zero-spam
|
17 |
|
18 |
WordPress Zero Spam blocks spam submissions including comments, registrations and more automatically without any config or setup. Just install, activate, and enjoy a spam-free site.
|
19 |
|
@@ -25,10 +25,24 @@ WordPress Zero Spam was initially built based on the work by [David Walsh](http:
|
|
25 |
* **No moderation queues**, spam isn't a administrators' problem
|
26 |
* **Blocks 99.9% of spam** submissions
|
27 |
* **Blocks spammy IPs** from ever seeing your site
|
28 |
-
* **Developer-friendly** allowing you to
|
29 |
* **Detailed logging** to catch & block recurring spammers
|
30 |
* **Advanced settings** for complete control over spammers
|
31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
32 |
== Installation ==
|
33 |
|
34 |
1. Upload the entire wordpress-zero-spam folder to the `/wp-content/plugins/` directory.
|
@@ -37,10 +51,6 @@ WordPress Zero Spam was initially built based on the work by [David Walsh](http:
|
|
37 |
|
38 |
For more information, see the [plugin’s website](https://benmarshall.me/wordpress-zero-spam).
|
39 |
|
40 |
-
This plugin does not support with Jetpack Comments. For more information, see [https://wordpress.org/support/topic/incompatible-with-jetpack-comments](https://wordpress.org/support/topic/incompatible-with-jetpack-comments).
|
41 |
-
|
42 |
-
Have a question, comment or suggestion? Feel free to [contact me](https://benmarshall.me/contact/?utm_source=wordpress.org&utm_medium=plugin&utm_campaign=wordpress_zero_spam), follow me [on Twitter](https://twitter.com/bmarshall0511) or [visit my site](https://benmarshall.me/?utm_source=wordpress.org&utm_medium=plugin&utm_campaign=wordpress_zero_spam).
|
43 |
-
|
44 |
== Frequently Asked Questions ==
|
45 |
|
46 |
= Is JavaScript required for this plugin to work? =
|
@@ -51,9 +61,22 @@ Yes, that's what does the magic and keeps spam bots out.
|
|
51 |
|
52 |
* `wpzerospam_comment_spam` - Fires when a spam comment is detected.
|
53 |
* `wpzerospam_registration_spam` - Fires when a spam registration is detected.
|
|
|
|
|
|
|
|
|
|
|
54 |
|
55 |
== Changelog ==
|
56 |
|
57 |
= v4.0.0 =
|
58 |
|
59 |
* A complete rewrite of the original plugin
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
Requires at least: 5.2
|
6 |
Tested up to: 5.4.2
|
7 |
Requires PHP: 7.1
|
8 |
+
Stable tag: 4.1.0
|
9 |
License: GNU GPLv3
|
10 |
License URI: https://choosealicense.com/licenses/gpl-3.0/
|
11 |
|
13 |
|
14 |
== Description ==
|
15 |
|
16 |
+
Why force users to prove that they're humans by filling out captchas? Let bots prove they're not bots with the [WordPress Zero Spam plugin](https://benmarshall.me/wordpress-zero-spam/?utm_source=wordpress.org&utm_medium=plugin&utm_campaign=wordpress_zero_spam).
|
17 |
|
18 |
WordPress Zero Spam blocks spam submissions including comments, registrations and more automatically without any config or setup. Just install, activate, and enjoy a spam-free site.
|
19 |
|
25 |
* **No moderation queues**, spam isn't a administrators' problem
|
26 |
* **Blocks 99.9% of spam** submissions
|
27 |
* **Blocks spammy IPs** from ever seeing your site
|
28 |
+
* **Developer-friendly** allowing you to integrate with any theme or plugin
|
29 |
* **Detailed logging** to catch & block recurring spammers
|
30 |
* **Advanced settings** for complete control over spammers
|
31 |
|
32 |
+
= Plugin Support =
|
33 |
+
|
34 |
+
* WordPress comments system
|
35 |
+
* WordPress user registrations
|
36 |
+
* [Contact Form 7](https://wordpress.org/plugins/contact-form-7/) submissions
|
37 |
+
* [Gravity Forms](https://www.gravityforms.com/) submissions
|
38 |
+
* [Ninja Forms](https://wordpress.org/plugins/ninja-forms/) submissions
|
39 |
+
* [BuddyPress](https://wordpress.org/plugins/buddypress/) registrations
|
40 |
+
* [Contact Form by WPForms](https://wordpress.org/plugins/wpforms-lite/) submissions
|
41 |
+
|
42 |
+
This plugin does not support with Jetpack Comments. For more information, see [https://wordpress.org/support/topic/incompatible-with-jetpack-comments](https://wordpress.org/support/topic/incompatible-with-jetpack-comments).
|
43 |
+
|
44 |
+
Have a question, comment or suggestion? Feel free to [contact me](https://benmarshall.me/contact/?utm_source=wordpress.org&utm_medium=plugin&utm_campaign=wordpress_zero_spam), follow me [on Twitter](https://twitter.com/bmarshall0511) or [visit my site](https://benmarshall.me/?utm_source=wordpress.org&utm_medium=plugin&utm_campaign=wordpress_zero_spam).
|
45 |
+
|
46 |
== Installation ==
|
47 |
|
48 |
1. Upload the entire wordpress-zero-spam folder to the `/wp-content/plugins/` directory.
|
51 |
|
52 |
For more information, see the [plugin’s website](https://benmarshall.me/wordpress-zero-spam).
|
53 |
|
|
|
|
|
|
|
|
|
54 |
== Frequently Asked Questions ==
|
55 |
|
56 |
= Is JavaScript required for this plugin to work? =
|
61 |
|
62 |
* `wpzerospam_comment_spam` - Fires when a spam comment is detected.
|
63 |
* `wpzerospam_registration_spam` - Fires when a spam registration is detected.
|
64 |
+
* `wpzerospam_cf7_spam` - Fires when a spam submission is made with a CF7 form.
|
65 |
+
* `wpzerospam_gform_spam` - Fires when a spam submission is made with a Gravity Form.
|
66 |
+
* `wpzerospam_ninja_forms_spam` - Fires when a spam submission is made with a Ninja Form.
|
67 |
+
* `wpzerospam_bp_registration_spam` - Fires when a BuddyPress spam registration is detected.
|
68 |
+
* `wpzerospam_wpform_spam` - Fires when a spam submission is made with a WPForm.
|
69 |
|
70 |
== Changelog ==
|
71 |
|
72 |
= v4.0.0 =
|
73 |
|
74 |
* A complete rewrite of the original plugin
|
75 |
+
|
76 |
+
= v4.1.0- =
|
77 |
+
|
78 |
+
* Added support for [Contact Form 7](https://wordpress.org/plugins/contact-form-7/)
|
79 |
+
* Added support for [Gravity Forms](https://www.gravityforms.com/)
|
80 |
+
* Added support for [Ninja Forms](https://wordpress.org/plugins/ninja-forms/)
|
81 |
+
* Added support for [BuddyPress](https://wordpress.org/plugins/buddypress/)
|
82 |
+
* Added support for [Contact Form by WPForms](https://wordpress.org/plugins/wpforms-lite/)
|
wordpress-zero-spam.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
*
|
5 |
* @package WordPressZeroSpam
|
6 |
* @subpackage WordPress
|
7 |
-
* @since 4.
|
8 |
* @author Ben Marshall
|
9 |
* @copyright 2020 Ben Marshall
|
10 |
* @license GPL-2.0-or-later
|
@@ -13,7 +13,7 @@
|
|
13 |
* Plugin Name: WordPress Zero Spam
|
14 |
* Plugin URI: https://benmarshall.me/wordpress-zero-spam
|
15 |
* Description: Tired of all the useless and bloated WordPress spam plugins? The WordPress Zero Spam plugin makes blocking spam a cinch. <strong>Just install, activate and say goodbye to spam.</strong> Based on work by <a href="http://davidwalsh.name/wordpress-comment-spam" target="_blank">David Walsh</a>.
|
16 |
-
* Version: 4.
|
17 |
* Requires at least: 5.2
|
18 |
* Requires PHP: 7.2
|
19 |
* Author: Ben Marshall
|
@@ -51,6 +51,11 @@ require plugin_dir_path( WORDPRESS_ZERO_SPAM ) . '/inc/admin.php';
|
|
51 |
*/
|
52 |
require plugin_dir_path( WORDPRESS_ZERO_SPAM ) . '/addons/comments.php';
|
53 |
require plugin_dir_path( WORDPRESS_ZERO_SPAM ) . '/addons/registration.php';
|
|
|
|
|
|
|
|
|
|
|
54 |
|
55 |
/**
|
56 |
* Plugin redirect functionality
|
4 |
*
|
5 |
* @package WordPressZeroSpam
|
6 |
* @subpackage WordPress
|
7 |
+
* @since 4.1.0
|
8 |
* @author Ben Marshall
|
9 |
* @copyright 2020 Ben Marshall
|
10 |
* @license GPL-2.0-or-later
|
13 |
* Plugin Name: WordPress Zero Spam
|
14 |
* Plugin URI: https://benmarshall.me/wordpress-zero-spam
|
15 |
* Description: Tired of all the useless and bloated WordPress spam plugins? The WordPress Zero Spam plugin makes blocking spam a cinch. <strong>Just install, activate and say goodbye to spam.</strong> Based on work by <a href="http://davidwalsh.name/wordpress-comment-spam" target="_blank">David Walsh</a>.
|
16 |
+
* Version: 4.1.0
|
17 |
* Requires at least: 5.2
|
18 |
* Requires PHP: 7.2
|
19 |
* Author: Ben Marshall
|
51 |
*/
|
52 |
require plugin_dir_path( WORDPRESS_ZERO_SPAM ) . '/addons/comments.php';
|
53 |
require plugin_dir_path( WORDPRESS_ZERO_SPAM ) . '/addons/registration.php';
|
54 |
+
require plugin_dir_path( WORDPRESS_ZERO_SPAM ) . '/addons/contact-form-7.php';
|
55 |
+
require plugin_dir_path( WORDPRESS_ZERO_SPAM ) . '/addons/gravity-forms.php';
|
56 |
+
require plugin_dir_path( WORDPRESS_ZERO_SPAM ) . '/addons/ninja-forms.php';
|
57 |
+
require plugin_dir_path( WORDPRESS_ZERO_SPAM ) . '/addons/buddypress.php';
|
58 |
+
require plugin_dir_path( WORDPRESS_ZERO_SPAM ) . '/addons/wpforms.php';
|
59 |
|
60 |
/**
|
61 |
* Plugin redirect functionality
|