Spam protection, AntiSpam, FireWall by CleanTalk - Version 5.48

Version Description

September 15 2016 = * buddyPress: Added private messages filtering. Doesn't check user if he has 3 or more messages in the "sentbox" and "inbox" folders. * buddyPress: Added option in settings for private messages check. * WooCommerce Wishlist: Added check for wishlists. * Fixed issue with "check all post data" option. * Improved filtering for Gravity Forms * Mobile Assistant Connector fix * Minor fixes.

Download this release

Release Info

Developer shagimuratov
Plugin Icon 128x128 Spam protection, AntiSpam, FireWall by CleanTalk
Version 5.48
Comparing to
See all releases

Code changes from version 5.47 to 5.48

cleantalk.php CHANGED
@@ -3,12 +3,12 @@
3
  Plugin Name: Spam Protection by CleanTalk
4
  Plugin URI: http://cleantalk.org
5
  Description: Max power, all-in-one, no Captcha, premium anti-spam plugin. No comment spam, no registration spam, no contact spam, protects any WordPress forms. Formerly Anti-Spam by CleanTalk.
6
- Version: 5.47
7
  Author: СleanTalk <welcome@cleantalk.org>
8
  Author URI: http://cleantalk.org
9
  */
10
- $cleantalk_plugin_version='5.47';
11
- $ct_agent_version = 'wordpress-547';
12
  $cleantalk_executed=false;
13
  $ct_sfw_updated = false;
14
 
3
  Plugin Name: Spam Protection by CleanTalk
4
  Plugin URI: http://cleantalk.org
5
  Description: Max power, all-in-one, no Captcha, premium anti-spam plugin. No comment spam, no registration spam, no contact spam, protects any WordPress forms. Formerly Anti-Spam by CleanTalk.
6
+ Version: 5.48
7
  Author: СleanTalk <welcome@cleantalk.org>
8
  Author URI: http://cleantalk.org
9
  */
10
+ $cleantalk_plugin_version='5.48';
11
+ $ct_agent_version = 'wordpress-548';
12
  $cleantalk_executed=false;
13
  $ct_sfw_updated = false;
14
 
inc/cleantalk-admin.php CHANGED
@@ -307,6 +307,7 @@ function ct_admin_init()
307
  add_settings_field('cleantalk_contact_forms_test', __('Contact forms', 'cleantalk'), 'ct_input_contact_forms_test', 'cleantalk', 'cleantalk_settings_anti_spam');
308
  add_settings_field('cleantalk_general_contact_forms_test', __('Custom contact forms', 'cleantalk'), 'ct_input_general_contact_forms_test', 'cleantalk', 'cleantalk_settings_anti_spam');
309
  add_settings_field('cleantalk_wc_checkout_test', __('WooCommerce checkout form', 'cleantalk'), 'ct_input_wc_chekout_test', 'cleantalk', 'cleantalk_settings_anti_spam');
 
310
  add_settings_field('cleantalk_general_postdata_test', __('Check all post data', 'cleantalk'), 'ct_input_general_postdata_test', 'cleantalk', 'cleantalk_settings_anti_spam');
311
 
312
  add_settings_field('cleantalk_show_adminbar', __('Show statistics in admin bar', 'cleantalk'), 'ct_input_show_adminbar', 'cleantalk', 'cleantalk_settings_anti_spam');
@@ -805,6 +806,22 @@ function ct_input_wc_chekout_test() {
805
  admin_addDescriptionsFields(__('Anti spam test for WooCommerce checkout form.', 'cleantalk'));
806
  }
807
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
808
  /**
809
  * @author Artem Leontiev
810
  * Admin callback function - Displays inputs of 'Publicate relevant comments' plugin parameter
307
  add_settings_field('cleantalk_contact_forms_test', __('Contact forms', 'cleantalk'), 'ct_input_contact_forms_test', 'cleantalk', 'cleantalk_settings_anti_spam');
308
  add_settings_field('cleantalk_general_contact_forms_test', __('Custom contact forms', 'cleantalk'), 'ct_input_general_contact_forms_test', 'cleantalk', 'cleantalk_settings_anti_spam');
309
  add_settings_field('cleantalk_wc_checkout_test', __('WooCommerce checkout form', 'cleantalk'), 'ct_input_wc_chekout_test', 'cleantalk', 'cleantalk_settings_anti_spam');
310
+ add_settings_field('cleantalk_bp_private_messages', __('buddyPress private messages', 'cleantalk'), 'ct_input_bp_private_messages', 'cleantalk', 'cleantalk_settings_anti_spam');
311
  add_settings_field('cleantalk_general_postdata_test', __('Check all post data', 'cleantalk'), 'ct_input_general_postdata_test', 'cleantalk', 'cleantalk_settings_anti_spam');
312
 
313
  add_settings_field('cleantalk_show_adminbar', __('Show statistics in admin bar', 'cleantalk'), 'ct_input_show_adminbar', 'cleantalk', 'cleantalk_settings_anti_spam');
806
  admin_addDescriptionsFields(__('Anti spam test for WooCommerce checkout form.', 'cleantalk'));
807
  }
808
 
809
+ /**
810
+ * Admin callback function - Displays inputs of 'bp_private_messages' plugin parameter
811
+ */
812
+ function ct_input_bp_private_messages() {
813
+ global $ct_options, $ct_data;
814
+
815
+ $ct_options = ct_get_options();
816
+ $ct_data = ct_get_data();
817
+
818
+ $value = $ct_options['bp_private_messages'];
819
+ echo "<input type='radio' id='bp_private_messages1' name='cleantalk_settings[bp_private_messages]' value='1' " . ($value == '1' ? 'checked' : '') . " /><label for='bp_private_messages1'> " . __('Yes') . "</label>";
820
+ echo '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
821
+ echo "<input type='radio' id='bp_private_messages0' name='cleantalk_settings[bp_private_messages]' value='0' " . ($value == '0' ? 'checked' : '') . " /><label for='bp_private_messages0'> " . __('No') . "</label>";
822
+ admin_addDescriptionsFields(__('Check buddyPress private messages.', 'cleantalk'));
823
+ }
824
+
825
  /**
826
  * @author Artem Leontiev
827
  * Admin callback function - Displays inputs of 'Publicate relevant comments' plugin parameter
inc/cleantalk-common.php CHANGED
@@ -470,6 +470,7 @@ function ct_def_options() {
470
  'contact_forms_test' => '1',
471
  'general_contact_forms_test' => '1', // Antispam test for unsupported and untested contact forms
472
  'wc_checkout_test' => '0', //WooCommerce checkout default test => OFF
 
473
  'remove_old_spam' => '0',
474
  'spam_store_days' => '15', // Days before delete comments from folder Spam
475
  'ssl_on' => 0, // Secure connection to servers
@@ -764,7 +765,8 @@ function ct_get_fields_any($arr, $message=array(), $email=NULL, $nickname=NULL,
764
  'ipn_track_id', // PayPal IPN #
765
  'txn_type', // PayPal transaction type
766
  'payment_status', // PayPal payment status
767
- 'ccbill_ipn' //CCBill IPN
 
768
  );
769
  $obfuscate_params = array(
770
  'password',
@@ -878,18 +880,23 @@ function ct_get_fields_any_postdata(&$message,$arr)
878
  }
879
  //*/
880
  //New ct_get_fields_any_postdata
881
- function ct_get_fields_any_postdata($arr, $message=''){
 
882
  $skip_params = array(
883
  'ipn_track_id', // PayPal IPN #
884
  'txn_type', // PayPal transaction type
885
  'payment_status', // PayPal payment status
886
  );
887
  foreach($arr as $key => $value){
888
- if(!is_array($value))
 
 
889
  if (!(in_array($key, $skip_params) || preg_match("/^ct_checkjs/", $key)) && $value!='')
890
- $message .= "$value\n";
891
- else
892
- $message .= ct_get_fields_any_postdata($value, $message)."\n";
 
 
893
  }
894
  return $message;
895
  }
470
  'contact_forms_test' => '1',
471
  'general_contact_forms_test' => '1', // Antispam test for unsupported and untested contact forms
472
  'wc_checkout_test' => '0', //WooCommerce checkout default test => OFF
473
+ 'bp_private_messages' => '1', //buddyPress private messages test => ON
474
  'remove_old_spam' => '0',
475
  'spam_store_days' => '15', // Days before delete comments from folder Spam
476
  'ssl_on' => 0, // Secure connection to servers
765
  'ipn_track_id', // PayPal IPN #
766
  'txn_type', // PayPal transaction type
767
  'payment_status', // PayPal payment status
768
+ 'ccbill_ipn', //CCBill IPN
769
+ 'ct_checkjs' //skip ct_checkjs field
770
  );
771
  $obfuscate_params = array(
772
  'password',
880
  }
881
  //*/
882
  //New ct_get_fields_any_postdata
883
+ //New ct_get_fields_any_postdata
884
+ function ct_get_fields_any_postdata($arr, $message=array()){
885
  $skip_params = array(
886
  'ipn_track_id', // PayPal IPN #
887
  'txn_type', // PayPal transaction type
888
  'payment_status', // PayPal payment status
889
  );
890
  foreach($arr as $key => $value){
891
+ if(!is_array($value)){
892
+ if($value == '')
893
+ continue;
894
  if (!(in_array($key, $skip_params) || preg_match("/^ct_checkjs/", $key)) && $value!='')
895
+ $message[$key] = $value;
896
+ }else{
897
+ $temp = ct_get_fields_any_postdata($value);
898
+ $message = (count($temp) == 0 ? $message : array_merge($message, $temp));
899
+ }
900
  }
901
  return $message;
902
  }
inc/cleantalk-public.php CHANGED
@@ -20,8 +20,8 @@ function ct_init() {
20
  {
21
  add_shortcode( 'et_pb_contact_form', 'ct_contact_form_validate' );
22
  }
23
-
24
- if($test_external_forms && $_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['cleantalk_hidden_method']) && isset($_POST['cleantalk_hidden_action']))
25
  {
26
  $action=htmlspecialchars($_POST['cleantalk_hidden_action']);
27
  $method=htmlspecialchars($_POST['cleantalk_hidden_method']);
@@ -79,9 +79,13 @@ function ct_init() {
79
 
80
  // WooCoomerse signups
81
  if(class_exists('WooCommerce')){
82
- add_filter('woocommerce_register_post', 'ct_register_post', 1, 3);
83
  }
84
-
 
 
 
 
85
  // JetPack Contact form
86
  $jetpack_active_modules = false;
87
  if(defined('JETPACK__VERSION') && isset($_POST['comment_post_ID']))
@@ -127,8 +131,9 @@ function ct_init() {
127
 
128
  // BuddyPress
129
  if(class_exists('BuddyPress')){
130
- add_action('bp_before_registration_submit_buttons','ct_register_form',1);
131
- add_filter('bp_signup_validate', 'ct_registration_errors',1);
 
132
  }
133
 
134
  // bbPress
@@ -191,7 +196,7 @@ function ct_init() {
191
  $ct_check_post_result=false;
192
  ct_contact_form_validate();
193
  }
194
- if($_SERVER['REQUEST_METHOD'] == 'POST' && $ct_general_postdata_test==1 && !is_admin()&&!@isset($_POST['ct_checkjs_cf7']))
195
  {
196
  $ct_check_post_result=false;
197
  ct_contact_form_validate_postdata();
@@ -199,6 +204,151 @@ function ct_init() {
199
  }
200
  }
201
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
202
  /**
203
  * Does actions to prepare anti-spam tests.
204
  * @return bool;
@@ -1729,8 +1879,14 @@ function ct_gforms_spam_test ($is_spam, $form, $entry) {
1729
  $post_info = json_encode($post_info);
1730
  if ($post_info === false)
1731
  $post_info = '';
1732
-
1733
- $ct_temp_msg_data = ct_get_fields_any($_POST);
 
 
 
 
 
 
1734
 
1735
  $sender_email = ($ct_temp_msg_data['email'] ? $ct_temp_msg_data['email'] : '');
1736
  $sender_nickname = ($ct_temp_msg_data['nickname'] ? $ct_temp_msg_data['nickname'] : '');
@@ -1756,6 +1912,7 @@ function ct_gforms_spam_test ($is_spam, $form, $entry) {
1756
 
1757
  if ($ct_result->allow == 0) {
1758
  $is_spam = true;
 
1759
  }
1760
 
1761
  return $is_spam;
@@ -1897,7 +2054,9 @@ function ct_contact_form_validate () {
1897
  isset($_POST['comment_post_ID']) || // The comment form
1898
  isset($_GET['for']) ||
1899
  (isset($_POST['log']) && isset($_POST['pwd'])) || //WooCommerce Sensei login form fix
1900
- (isset($_POST['_wpcf7']) && isset($_POST['_wpcf7_version']) && isset($_POST['_wpcf7_locale'])) //CF7 fix)
 
 
1901
  ) {
1902
  return null;
1903
  }
@@ -2035,16 +2194,17 @@ function ct_contact_form_validate () {
2035
  die();
2036
  }
2037
  //WooCommerce checkout ("Place Oreder button")
2038
- elseif(strpos($_POST['_wp_http_referer'],'wc-ajax=update_order_review'))
2039
- {
2040
- $result = Array(
2041
- result => 'failure',
2042
- messages => "<ul class=\"woocommerce-error\"><li>".$ct_result->comment."</li></ul>",
2043
- refresh => 'false',
2044
- reload => 'false'
2045
- );
2046
- print json_encode($result);
2047
- die();
 
2048
  }
2049
  else
2050
  {
20
  {
21
  add_shortcode( 'et_pb_contact_form', 'ct_contact_form_validate' );
22
  }
23
+
24
+ if($test_external_forms && isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['cleantalk_hidden_method']) && isset($_POST['cleantalk_hidden_action']))
25
  {
26
  $action=htmlspecialchars($_POST['cleantalk_hidden_action']);
27
  $method=htmlspecialchars($_POST['cleantalk_hidden_method']);
79
 
80
  // WooCoomerse signups
81
  if(class_exists('WooCommerce')){
82
+ add_filter('woocommerce_register_post', 'ct_register_post', 1, 3);
83
  }
84
+ if(class_exists('WC_Wishlists_Wishlist')){
85
+ add_filter('wc_wishlists_create_list_args', 'ct_woocommerce_wishlist_check', 1, 1);
86
+ }
87
+
88
+
89
  // JetPack Contact form
90
  $jetpack_active_modules = false;
91
  if(defined('JETPACK__VERSION') && isset($_POST['comment_post_ID']))
131
 
132
  // BuddyPress
133
  if(class_exists('BuddyPress')){
134
+ add_action('bp_before_registration_submit_buttons','ct_register_form',1);
135
+ add_filter('bp_signup_validate', 'ct_registration_errors',1);
136
+ add_action('messages_message_before_save','ct_bp_private_msg_check', 1);
137
  }
138
 
139
  // bbPress
196
  $ct_check_post_result=false;
197
  ct_contact_form_validate();
198
  }
199
+ if(isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] == 'POST' && $ct_general_postdata_test==1 && !is_admin()&&!@isset($_POST['ct_checkjs_cf7']))
200
  {
201
  $ct_check_post_result=false;
202
  ct_contact_form_validate_postdata();
204
  }
205
  }
206
 
207
+ function ct_woocommerce_wishlist_check($args){
208
+ global $ct_options;
209
+
210
+ $ct_options = ct_get_options();
211
+
212
+ //Protect logged in users
213
+ if($args['wishlist_status'])
214
+ if(isset($ct_options['protect_logged_in']) && $ct_options['protect_logged_in'] == 0)
215
+ return $args;
216
+
217
+ //Getting request params
218
+
219
+ $message = '';
220
+ $subject = '';
221
+ $email = $args['wishlist_owner_email'];
222
+ if($args['wishlist_first_name']!='' || $args['wishlist_last_name']!='')
223
+ $nickname = trim($args['wishlist_first_name']." ".$args['wishlist_last_name']);
224
+ else
225
+ $nickname = '';
226
+
227
+ $post_info['comment_type'] = 'feedback';
228
+ $post_info['post_url'] = $_SERVER['HTTP_REFERER'];
229
+ $post_info = json_encode($post_info);
230
+ if ($post_info === false)
231
+ $post_info = '';
232
+
233
+ $checkjs = js_test('ct_checkjs', $_COOKIE, true);
234
+ if ($checkjs === null)
235
+ $checkjs = js_test('ct_checkjs', $_POST, true);
236
+
237
+ $sender_info = array(
238
+ 'sender_url' => null
239
+ );
240
+
241
+ //Making a call
242
+
243
+ $ct_base_call_result = ct_base_call(array(
244
+ 'message' => $subject." ".$message,
245
+ 'example' => null,
246
+ 'sender_email' => $email,
247
+ 'sender_nickname' => $nickname,
248
+ 'post_info' => $post_info,
249
+ 'checkjs' => $checkjs,
250
+ 'sender_info' => $sender_info
251
+ ));
252
+
253
+ $ct = $ct_base_call_result['ct'];
254
+ $ct_result = $ct_base_call_result['ct_result'];
255
+
256
+ if ($ct_result->stop_queue == 1 || $ct_result->spam == 1 || $ct_result->allow == 0)
257
+ wp_die("<h1>Spam Protection by CleanTalk</h1><h2>".$ct_result->comment."</h2>", '', array('response' => 403, "back_link" => true, "text_direction" => 'ltr'));
258
+ else
259
+ return $args;
260
+ }
261
+
262
+ /**
263
+ * Public function - Tests new private messages (dialogs)
264
+ * return @array with errors if spam has found
265
+ */
266
+
267
+ function ct_bp_private_msg_check( $bp_message_obj){
268
+ global $ct_options;
269
+
270
+ $ct_options = ct_get_options();
271
+
272
+ //Check for enabled option
273
+ if($ct_options['bp_private_messages'] == 0)
274
+ return;
275
+
276
+ //Check for quantity of comments
277
+ $is_max_comments = false;
278
+ if(defined('CLEANTALK_CHECK_COMMENTS_NUMBER'))
279
+ $comments_check_number = CLEANTALK_CHECK_COMMENTS_NUMBER;
280
+ else
281
+ $comments_check_number = 3;
282
+
283
+ if(isset($ct_options['check_comments_number']))
284
+ $value = @intval($ct_options['check_comments_number']);
285
+ else
286
+ $value=1;
287
+
288
+ if($value == 1){
289
+ $args = array(
290
+ 'user_id' => $bp_message_obj->sender_id,
291
+ 'box' => 'sentbox',
292
+ 'type' => 'all',
293
+ 'limit' => $comments_check_number,
294
+ 'page' => null,
295
+ 'search_terms' => '',
296
+ 'meta_query' => array()
297
+ );
298
+ $sentbox_msgs = BP_Messages_Thread::get_current_threads_for_user($args);
299
+ $cnt_sentbox_msgs = $sentbox_msgs['total'];
300
+ $args['box'] = 'inbox';
301
+ $inbox_msgs = BP_Messages_Thread::get_current_threads_for_user($args);
302
+ $cnt_inbox_msgs = $inbox_msgs['total'];
303
+ if(($cnt_inbox_msgs + $cnt_sentbox_msgs) >= $comments_check_number)
304
+ $is_max_comments = true;
305
+ }
306
+
307
+ if($is_max_comments)
308
+ return;
309
+
310
+ //Getting request params
311
+
312
+ $sender_user_obj = get_user_by('id', $bp_message_obj->sender_id);
313
+
314
+ $message = $bp_message_obj->message;
315
+ $subject = $bp_message_obj->subject;
316
+ $email = $sender_user_obj->data->user_email;
317
+ $nickname = $sender_user_obj->data->user_login;
318
+
319
+ $post_info['comment_type'] = 'feedback';
320
+ $post_info['post_url'] = $_SERVER['HTTP_REFERER'];
321
+ $post_info = json_encode($post_info);
322
+ if ($post_info === false)
323
+ $post_info = '';
324
+
325
+ $checkjs = js_test('ct_checkjs', $_COOKIE, true);
326
+ if ($checkjs === null)
327
+ $checkjs = js_test('ct_checkjs', $_POST, true);
328
+
329
+ $sender_info = array(
330
+ 'sender_url' => null
331
+ );
332
+
333
+ //Making a call
334
+
335
+ $ct_base_call_result = ct_base_call(array(
336
+ 'message' => $subject." ".$message,
337
+ 'example' => null,
338
+ 'sender_email' => $email,
339
+ 'sender_nickname' => $nickname,
340
+ 'post_info' => $post_info,
341
+ 'checkjs' => $checkjs,
342
+ 'sender_info' => $sender_info
343
+ ));
344
+
345
+ $ct = $ct_base_call_result['ct'];
346
+ $ct_result = $ct_base_call_result['ct_result'];
347
+
348
+ if ($ct_result->stop_queue == 1 || $ct_result->spam == 1 || $ct_result->allow == 0)
349
+ wp_die("<h1>Spam Protection by CleanTalk</h1><h2>".$ct_result->comment."</h2>", '', array('response' => 403, "back_link" => true, "text_direction" => 'ltr'));
350
+ }
351
+
352
  /**
353
  * Does actions to prepare anti-spam tests.
354
  * @return bool;
1879
  $post_info = json_encode($post_info);
1880
  if ($post_info === false)
1881
  $post_info = '';
1882
+
1883
+ $ct_temp = array();
1884
+ foreach($entry as $key => $value){
1885
+ if(is_numeric($key))
1886
+ $ct_temp[$key]=$value;
1887
+ } unset($key, $value);
1888
+
1889
+ $ct_temp_msg_data = ct_get_fields_any($ct_temp);
1890
 
1891
  $sender_email = ($ct_temp_msg_data['email'] ? $ct_temp_msg_data['email'] : '');
1892
  $sender_nickname = ($ct_temp_msg_data['nickname'] ? $ct_temp_msg_data['nickname'] : '');
1912
 
1913
  if ($ct_result->allow == 0) {
1914
  $is_spam = true;
1915
+ //wp_die("<h1>Spam Protection by CleanTalk</h1><h2>".$ct_result->comment."</h2>", '', array('response' => 403, "back_link" => true, "text_direction" => 'ltr'));
1916
  }
1917
 
1918
  return $is_spam;
2054
  isset($_POST['comment_post_ID']) || // The comment form
2055
  isset($_GET['for']) ||
2056
  (isset($_POST['log']) && isset($_POST['pwd'])) || //WooCommerce Sensei login form fix
2057
+ (isset($_POST['_wpcf7']) && isset($_POST['_wpcf7_version']) && isset($_POST['_wpcf7_locale'])) || //CF7 fix)
2058
+ (isset($_POST['hash']) && isset($_POST['device_unique_id']) && isset($_POST['device_name'])) ||//Mobile Assistant Connector fix
2059
+ isset($_POST['gform_submit'])
2060
  ) {
2061
  return null;
2062
  }
2194
  die();
2195
  }
2196
  //WooCommerce checkout ("Place Oreder button")
2197
+ elseif(isset($_POST['_wp_http_referer'])){
2198
+ if(strpos($_POST['_wp_http_referer'],'wc-ajax=update_order_review')){
2199
+ $result = Array(
2200
+ result => 'failure',
2201
+ messages => "<ul class=\"woocommerce-error\"><li>".$ct_result->comment."</li></ul>",
2202
+ refresh => 'false',
2203
+ reload => 'false'
2204
+ );
2205
+ print json_encode($result);
2206
+ die();
2207
+ }
2208
  }
2209
  else
2210
  {
readme.txt CHANGED
@@ -1,16 +1,17 @@
1
  === Spam Protection by CleanTalk (no Captcha Anti-Spam) ===
2
  Contributors: znaeff, shagimuratov, serge00
3
- Tags: spam, anti-spam, antispam, anti spam, bbpress, buddypress, captcha, capcha, captha, catcha, cf7 spam, comments, contact form spam, signup, spammers, spammy, woocommerce, wordpress spam, booking, order, subscription, gravity spam, jetpack, bots, contact form 7, contact form, registrations, ninja, Fast Secure Contact, Gravity forms, formidable, mailchimp, s2member, protection, protect, email, akismet, plugin, contact, recaptcha, google captcha, google recaptcha, math, security, login, blacklist, prevent spam comments, wordpress, User Frontend, bulk delete, bulk remove, cloudflare, widget, review, auth forms, firewall, ddos, cleantalk, mailpoet, profile builder, comment spam, registration spam, spam comments, comment moderation, spam bots, block spam, signup spam, spam blocker, spam filter, user registration spam,pingback,trackback, anti-spam plugin, varnish, amp, spam free, userpro,PirateForms, BestWebSoft, WebDorado
4
  Requires at least: 3.0
5
  Tested up to: 4.6.1
6
- Stable tag: 5.47
7
  License: GPLv2
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
10
- Spam protection, anti-spam, all-in-one, premium plug-in. No comments spam & registrations spam, no email spam, protects any forms. Forget spam.
 
11
 
12
  == Description ==
13
- Anti-Spam for WordPress. No CAPTCHA, no questions, no animal counting, no puzzles, no math and no spam bots. Universal AntiSpam plugin. Formerly "Anti-Spam by CleanTalk".
14
 
15
  = Anti-Spam features =
16
  1. Stops spam comments.
@@ -20,8 +21,12 @@ Anti-Spam for WordPress. No CAPTCHA, no questions, no animal counting, no puzzle
20
  1. Stops spam bookings.
21
  1. Stops spam subscriptions.
22
  1. Stops spam in widgets.
 
23
  1. Checks the existing comments for spam.
24
 
 
 
 
25
  = Public reviews =
26
  >With CleanTalk installed you can rest assured that you will no longer have to fuss with annoying spam. You can now focus your time on developing and improving your web site, your blog content, and you business without being distracted by these useless comments.
27
  > *Dr. Erica Goodstone. <a href="https://www.poweraffiliateclub.com/clear-your-blog-of-spam-comments/" target="_blank">www.poweraffiliateclub.com</a>*
@@ -32,9 +37,6 @@ Anti-Spam for WordPress. No CAPTCHA, no questions, no animal counting, no puzzle
32
  >I know you have heard of a number of anti-spam plugins. But you must know, the cloud-based ones are the best regarding detection rate. They compare all the content in forms with their own algorithm to find out the legibility.
33
  >*<a href="https://www.techwibe.com/cleantalk-wordpress-plugin-review/" target="_blank">www.techwibe.com</a>*
34
 
35
- = Free trial then $8 per year =
36
- CleanTalk is a free plugin which work with the premium Cloud Anti-Spam service cleantalk.org. This plugin as a service https://en.wikipedia.org/wiki/Software_as_a_service.
37
-
38
  = Anti-Spam protection for comments =
39
  Supports native WordPress, JetPack comments and any other comment plugins. The plugin moves spam comments to SPAM folder or you can set the option to ban spam comments silently. You can also enable the option in the plugin settings to auto-delete comments from SPAM folder.
40
 
@@ -63,7 +65,7 @@ Protects everything about bbPress: logins, registrations, forums, topics and rep
63
  * Any submission to the site (checkbox 'Check all POST data')
64
 
65
  = Compatible with WordPress cache plugins =
66
- * W3 Total Cache, Quick Cache, WP Fastest Cache, Hyper Cache, WP Super cache and any other cache plugins.
67
 
68
  = Check existing comments for spam. Bulk comments removal =
69
  With the help of anti-spam by CleanTalk you can inspect through existing comments to find and quickly delete spam comments at once. To use this function, go to WP Console —> Comments —> Find spam comments.
@@ -472,12 +474,22 @@ WordPress 3.0 at least. PHP 5 with CURL or file_get_contents() function and enab
472
 
473
  == Screenshots ==
474
  1. AntiSpam settings.
475
- 1. AntiSpam stopped spam bot at the CAPTCHA less registration form. The plugin provide explanation to visitor and websites about eache rejected comment/registration or contact message.
476
  1. Use AntiSpam analytics tool for each website in service Dashboard to have information about spam/legitimate statistics.
477
  1. Use AntiSpam log to control anti-spam plugin.
478
  1. CleanTalk works faster than most of other anti-spam plugins.
 
479
 
480
  == Changelog ==
 
 
 
 
 
 
 
 
 
481
  = 5.47 September 5 2016 =
482
  * WooCommerce: direct integration for checkout form.
483
  * WooCommerce Sensei: login form fix.
@@ -1131,6 +1143,16 @@ WordPress 3.0 at least. PHP 5 with CURL or file_get_contents() function and enab
1131
  * First version
1132
 
1133
  == Upgrade Notice ==
 
 
 
 
 
 
 
 
 
 
1134
  = 5.47 September 5 2016 =
1135
  * WooCommerce: direct integration for checkout form.
1136
  * WooCommerce Sensei: login form fix.
1
  === Spam Protection by CleanTalk (no Captcha Anti-Spam) ===
2
  Contributors: znaeff, shagimuratov, serge00
3
+ Tags: spam, anti-spam, antispam, anti spam, bbpress, buddypress, captcha, capcha, captha, catcha, cf7 spam, comments, contact form spam, signup, spammers, spammy, woocommerce, wordpress spam, subscription, gravity spam, jetpack, bots, contact form 7, contact form, registrations, ninja, Fast Secure Contact, Gravity forms, formidable, mailchimp, s2member, protection, protect, email, akismet, plugin, contact, recaptcha, google captcha, google recaptcha, math, security, login, blacklist, prevent spam comments, wordpress, User Frontend, bulk delete, bulk remove, widget, review, firewall, cleantalk, mailpoet, profile builder, comment spam, registration spam, spam comments, comment moderation, spam bots, block spam, signup spam, spam blocker, spam filter, user registration spam,pingback,trackback, anti-spam plugin, varnish, amp, spam free, userpro,honeypot,spamshield
4
  Requires at least: 3.0
5
  Tested up to: 4.6.1
6
+ Stable tag: 5.48
7
  License: GPLv2
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
10
+ Spam protection, anti-spam, all-in-one, premium plug-in. No comments spam & users spam, no contact form & WooCommerce spam. Forget spam.
11
+
12
 
13
  == Description ==
14
+ No CAPTCHA, no questions, no animal counting, no puzzles, no math and no spam bots. Universal Anti-Spam plugin. Formerly "Anti-Spam by CleanTalk".
15
 
16
  = Anti-Spam features =
17
  1. Stops spam comments.
21
  1. Stops spam bookings.
22
  1. Stops spam subscriptions.
23
  1. Stops spam in widgets.
24
+ 1. Stops spam in WooCommerce.
25
  1. Checks the existing comments for spam.
26
 
27
+ = Free trial then $8 per year =
28
+ CleanTalk is a free plugin which work with the premium Cloud Anti-Spam service cleantalk.org. This plugin as a service https://en.wikipedia.org/wiki/Software_as_a_service.
29
+
30
  = Public reviews =
31
  >With CleanTalk installed you can rest assured that you will no longer have to fuss with annoying spam. You can now focus your time on developing and improving your web site, your blog content, and you business without being distracted by these useless comments.
32
  > *Dr. Erica Goodstone. <a href="https://www.poweraffiliateclub.com/clear-your-blog-of-spam-comments/" target="_blank">www.poweraffiliateclub.com</a>*
37
  >I know you have heard of a number of anti-spam plugins. But you must know, the cloud-based ones are the best regarding detection rate. They compare all the content in forms with their own algorithm to find out the legibility.
38
  >*<a href="https://www.techwibe.com/cleantalk-wordpress-plugin-review/" target="_blank">www.techwibe.com</a>*
39
 
 
 
 
40
  = Anti-Spam protection for comments =
41
  Supports native WordPress, JetPack comments and any other comment plugins. The plugin moves spam comments to SPAM folder or you can set the option to ban spam comments silently. You can also enable the option in the plugin settings to auto-delete comments from SPAM folder.
42
 
65
  * Any submission to the site (checkbox 'Check all POST data')
66
 
67
  = Compatible with WordPress cache plugins =
68
+ * W3 Total Cache, Quick Cache, WP Fastest Cache, Hyper Cache, WP Super cache, WP-Rocket and any other cache plugins.
69
 
70
  = Check existing comments for spam. Bulk comments removal =
71
  With the help of anti-spam by CleanTalk you can inspect through existing comments to find and quickly delete spam comments at once. To use this function, go to WP Console —> Comments —> Find spam comments.
474
 
475
  == Screenshots ==
476
  1. AntiSpam settings.
477
+ 1. AntiSpam plugin rejected a spam bot at the CAPTCHA less registration form. The plugin provides explanation to visitor and websites about each rejected comment/registration or contact message.
478
  1. Use AntiSpam analytics tool for each website in service Dashboard to have information about spam/legitimate statistics.
479
  1. Use AntiSpam log to control anti-spam plugin.
480
  1. CleanTalk works faster than most of other anti-spam plugins.
481
+ 1. The Dashboard with a map of most spam active countries per your account.
482
 
483
  == Changelog ==
484
+ = 5.48 September 15 2016 =
485
+ * buddyPress: Added private messages filtering. Doesn't check user if he has 3 or more messages in the "sentbox" and "inbox" folders.
486
+ * buddyPress: Added option in settings for private messages check.
487
+ * WooCommerce Wishlist: Added check for wishlists.
488
+ * Fixed issue with "check all post data" option.
489
+ * Improved filtering for Gravity Forms
490
+ * Mobile Assistant Connector fix
491
+ * Minor fixes.
492
+
493
  = 5.47 September 5 2016 =
494
  * WooCommerce: direct integration for checkout form.
495
  * WooCommerce Sensei: login form fix.
1143
  * First version
1144
 
1145
  == Upgrade Notice ==
1146
+ == Changelog ==
1147
+ = 5.48 September 15 2016 =
1148
+ * buddyPress: Added private messages filtering. Doesn't check user if he has 3 or more messages in the "sentbox" and "inbox" folders.
1149
+ * buddyPress: Added option in settings for private messages check.
1150
+ * WooCommerce Wishlist: Added check for wishlists.
1151
+ * Fixed issue with "check all post data" option.
1152
+ * Improved filtering for Gravity Forms
1153
+ * Mobile Assistant Connector fix
1154
+ * Minor fixes.
1155
+
1156
  = 5.47 September 5 2016 =
1157
  * WooCommerce: direct integration for checkout form.
1158
  * WooCommerce Sensei: login form fix.
screenshot-2.png CHANGED
Binary file
screenshot-6.png ADDED
Binary file