Version Description
Download this release
Release Info
Developer | shagimuratov |
Plugin | Spam protection, AntiSpam, FireWall by CleanTalk |
Version | 2.48 |
Comparing to | |
See all releases |
Code changes from version 2.44 to 2.48
- cleantalk-admin.php +34 -13
- cleantalk.class.php +6 -2
- cleantalk.php +60 -18
- readme.txt +34 -17
- screenshot-1.png +0 -0
cleantalk-admin.php
CHANGED
@@ -22,17 +22,25 @@ function ct_admin_add_page() {
|
|
22 |
* Admin action 'admin_init' - Add the admin settings and such
|
23 |
*/
|
24 |
function ct_admin_init() {
|
25 |
-
global $show_ct_notice_trial, $ct_notice_trial_label, $show_ct_notice_online, $ct_notice_online_label, $trial_notice_check_timeout;
|
26 |
|
27 |
$show_ct_notice_trial = false;
|
28 |
if (isset($_COOKIE[$ct_notice_trial_label])) {
|
29 |
if ($_COOKIE[$ct_notice_trial_label] == 1)
|
30 |
$show_ct_notice_trial = true;
|
31 |
} else {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
32 |
$options = ct_get_options();
|
33 |
-
|
|
|
34 |
$url = 'https://cleantalk.org/app_notice';
|
35 |
-
$server_timeout =
|
36 |
$data['auth_key'] = $options['apikey'];
|
37 |
$data['param'] = 'notice_paid_till';
|
38 |
|
@@ -62,8 +70,10 @@ function ct_admin_init() {
|
|
62 |
}
|
63 |
}
|
64 |
}
|
65 |
-
|
66 |
-
|
|
|
|
|
67 |
}
|
68 |
|
69 |
$show_ct_notice_online = '';
|
@@ -229,17 +239,22 @@ input[type=submit] {padding: 10px; background: #3399FF; color: #fff; border:0 no
|
|
229 |
* @return bool
|
230 |
*/
|
231 |
function admin_notice_message(){
|
232 |
-
global $show_ct_notice_trial, $show_ct_notice_online;
|
233 |
|
234 |
if (ct_active() === false)
|
235 |
return false;
|
236 |
-
|
237 |
$options = ct_get_options();
|
238 |
$show_notice = true;
|
239 |
if ($show_notice && ct_valid_key($options['apikey']) === false) {
|
240 |
echo '<div class="updated"><h3>' . __("Please enter the Access Key in <a href=\"options-general.php?page=cleantalk\">CleanTalk plugin</a> settings to enable protection from spam!", 'cleantalk') . '</h3></div>';
|
241 |
}
|
242 |
|
|
|
|
|
|
|
|
|
|
|
243 |
if ($show_notice && !empty($show_ct_notice_online)) {
|
244 |
echo '<div class="updated"><h3><b>';
|
245 |
if($show_ct_notice_online === 'Y'){
|
@@ -250,11 +265,6 @@ function admin_notice_message(){
|
|
250 |
echo '</b></h3></div>';
|
251 |
}
|
252 |
|
253 |
-
if ($show_notice && $show_ct_notice_trial) {
|
254 |
-
echo '<div class="updated"><h3>' . __("CleanTalk anti-spam trial period will end soon, please upgrade to <a href=\"http://cleantalk.org/my\" target=\"_blank\"><b>premium version</b></a>!", 'cleantalk') . '</h3></div>';
|
255 |
-
$show_notice = false;
|
256 |
-
}
|
257 |
-
|
258 |
ct_send_feedback();
|
259 |
|
260 |
delete_spam_comments();
|
@@ -410,7 +420,7 @@ if (!function_exists ( 'ct_plugin_action_links')) {
|
|
410 |
* @return array
|
411 |
*/
|
412 |
function ct_update_option($option_name) {
|
413 |
-
global $show_ct_notice_online, $ct_notice_online_label;
|
414 |
if($option_name !== 'cleantalk_settings')
|
415 |
return;
|
416 |
$ct_base_call_result = ct_base_call(array(
|
@@ -428,7 +438,18 @@ function ct_update_option($option_name) {
|
|
428 |
setcookie($ct_notice_online_label, 0, null, '/');
|
429 |
}else{
|
430 |
setcookie($ct_notice_online_label, 1, strtotime("+5 seconds"), '/');
|
|
|
431 |
}
|
432 |
}
|
433 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
434 |
?>
|
22 |
* Admin action 'admin_init' - Add the admin settings and such
|
23 |
*/
|
24 |
function ct_admin_init() {
|
25 |
+
global $show_ct_notice_trial, $ct_notice_trial_label, $show_ct_notice_online, $ct_notice_online_label, $trial_notice_check_timeout, $pagenow;
|
26 |
|
27 |
$show_ct_notice_trial = false;
|
28 |
if (isset($_COOKIE[$ct_notice_trial_label])) {
|
29 |
if ($_COOKIE[$ct_notice_trial_label] == 1)
|
30 |
$show_ct_notice_trial = true;
|
31 |
} else {
|
32 |
+
// Run function only on special pages
|
33 |
+
$working_pages = array("plugins.php", "options-general.php");
|
34 |
+
$do_request = false;
|
35 |
+
if (in_array($pagenow, $working_pages)) {
|
36 |
+
$do_request = true;
|
37 |
+
}
|
38 |
+
|
39 |
$options = ct_get_options();
|
40 |
+
$result = false;
|
41 |
+
if (function_exists('curl_init') && function_exists('json_decode') && ct_valid_key($options['apikey']) && $do_request) {
|
42 |
$url = 'https://cleantalk.org/app_notice';
|
43 |
+
$server_timeout = 2;
|
44 |
$data['auth_key'] = $options['apikey'];
|
45 |
$data['param'] = 'notice_paid_till';
|
46 |
|
70 |
}
|
71 |
}
|
72 |
}
|
73 |
+
|
74 |
+
if ($result) {
|
75 |
+
setcookie($ct_notice_trial_label, (int) $show_ct_notice_trial, strtotime("+$trial_notice_check_timeout minutes"), '/');
|
76 |
+
}
|
77 |
}
|
78 |
|
79 |
$show_ct_notice_online = '';
|
239 |
* @return bool
|
240 |
*/
|
241 |
function admin_notice_message(){
|
242 |
+
global $show_ct_notice_trial, $show_ct_notice_online, $ct_plugin_name;
|
243 |
|
244 |
if (ct_active() === false)
|
245 |
return false;
|
246 |
+
|
247 |
$options = ct_get_options();
|
248 |
$show_notice = true;
|
249 |
if ($show_notice && ct_valid_key($options['apikey']) === false) {
|
250 |
echo '<div class="updated"><h3>' . __("Please enter the Access Key in <a href=\"options-general.php?page=cleantalk\">CleanTalk plugin</a> settings to enable protection from spam!", 'cleantalk') . '</h3></div>';
|
251 |
}
|
252 |
|
253 |
+
if ($show_notice && $show_ct_notice_trial) {
|
254 |
+
echo '<div class="updated"><h3>' . __("<a href=\"options-general.php?page=cleantalk\">$ct_plugin_name</a> trial period will end soon, please upgrade to <a href=\"http://cleantalk.org/my\" target=\"_blank\"><b>premium version</b></a>!", 'cleantalk') . '</h3></div>';
|
255 |
+
$show_notice = false;
|
256 |
+
}
|
257 |
+
|
258 |
if ($show_notice && !empty($show_ct_notice_online)) {
|
259 |
echo '<div class="updated"><h3><b>';
|
260 |
if($show_ct_notice_online === 'Y'){
|
265 |
echo '</b></h3></div>';
|
266 |
}
|
267 |
|
|
|
|
|
|
|
|
|
|
|
268 |
ct_send_feedback();
|
269 |
|
270 |
delete_spam_comments();
|
420 |
* @return array
|
421 |
*/
|
422 |
function ct_update_option($option_name) {
|
423 |
+
global $show_ct_notice_online, $ct_notice_online_label, $ct_notice_trial_label, $trial_notice_check_timeout;
|
424 |
if($option_name !== 'cleantalk_settings')
|
425 |
return;
|
426 |
$ct_base_call_result = ct_base_call(array(
|
438 |
setcookie($ct_notice_online_label, 0, null, '/');
|
439 |
}else{
|
440 |
setcookie($ct_notice_online_label, 1, strtotime("+5 seconds"), '/');
|
441 |
+
setcookie($ct_notice_trial_label, (int) 0, strtotime("+$trial_notice_check_timeout minutes"), '/');
|
442 |
}
|
443 |
}
|
444 |
|
445 |
+
|
446 |
+
/**
|
447 |
+
* Tests account status
|
448 |
+
* @return array
|
449 |
+
*/
|
450 |
+
function ct_check_trial_notice() {
|
451 |
+
|
452 |
+
return null;
|
453 |
+
}
|
454 |
+
|
455 |
?>
|
cleantalk.class.php
CHANGED
@@ -898,8 +898,12 @@ class Cleantalk {
|
|
898 |
return mb_convert_encoding($str, 'UTF-8', $data_codepage);
|
899 |
|
900 |
$encoding = mb_detect_encoding($str);
|
901 |
-
if ($encoding)
|
902 |
-
|
|
|
|
|
|
|
|
|
903 |
}
|
904 |
|
905 |
return $str;
|
898 |
return mb_convert_encoding($str, 'UTF-8', $data_codepage);
|
899 |
|
900 |
$encoding = mb_detect_encoding($str);
|
901 |
+
if ($encoding && $encoding != 'UTF-8') {
|
902 |
+
$str = mb_convert_encoding($str, 'UTF-8', $encoding);
|
903 |
+
} else {
|
904 |
+
// Final cut of non UTF-8 characters
|
905 |
+
$str = preg_replace('/[^(\x20-\x7F)]*/','', $str);
|
906 |
+
}
|
907 |
}
|
908 |
|
909 |
return $str;
|
cleantalk.php
CHANGED
@@ -3,14 +3,15 @@
|
|
3 |
Plugin Name: Anti-spam by CleanTalk
|
4 |
Plugin URI: http://cleantalk.org
|
5 |
Description: Cloud antispam for comments, registrations and contacts. The plugin doesn't use CAPTCHA, Q&A, math, counting animals or quiz to stop spam bots.
|
6 |
-
Version: 2.
|
7 |
Author: СleanTalk <welcome@cleantalk.ru>
|
8 |
Author URI: http://cleantalk.org
|
9 |
*/
|
10 |
|
11 |
define('CLEANTALK_PLUGIN_DIR', plugin_dir_path(__FILE__));
|
12 |
|
13 |
-
$ct_agent_version = 'wordpress-
|
|
|
14 |
$ct_checkjs_frm = 'ct_checkjs_frm';
|
15 |
$ct_checkjs_register_form = 'ct_checkjs_register_form';
|
16 |
$ct_session_request_id_label = 'request_id';
|
@@ -56,9 +57,12 @@ $ct_wplp_result_label = 'ct_wplp_result';
|
|
56 |
// Flag indicates active JetPack comments
|
57 |
$ct_jp_comments = false;
|
58 |
|
59 |
-
// S2member post data label
|
60 |
$ct_post_data_label = 's2member_pro_paypal_registration';
|
61 |
|
|
|
|
|
|
|
62 |
// Form time load label
|
63 |
$ct_formtime_label = 'formtime';
|
64 |
|
@@ -81,6 +85,10 @@ add_action('register_form','ct_register_form');
|
|
81 |
add_filter('registration_errors', 'ct_registration_errors', 10, 3);
|
82 |
add_action('user_register', 'ct_user_register');
|
83 |
|
|
|
|
|
|
|
|
|
84 |
// BuddyPress
|
85 |
add_action('bp_before_registration_submit_buttons','ct_register_form');
|
86 |
add_filter('bp_signup_validate', 'ct_registration_errors');
|
@@ -124,7 +132,7 @@ if (is_admin()) {
|
|
124 |
* @return mixed[] Array of options
|
125 |
*/
|
126 |
function ct_init() {
|
127 |
-
global $ct_wplp_result_label, $ct_jp_comments, $ct_post_data_label;
|
128 |
|
129 |
ct_init_session();
|
130 |
|
@@ -154,7 +162,7 @@ function ct_init() {
|
|
154 |
}
|
155 |
|
156 |
// intercept S2member POST
|
157 |
-
if (defined('WS_PLUGIN__S2MEMBER_PRO_VERSION') && isset($_POST[$ct_post_data_label]['email'])){
|
158 |
ct_s2member_registration_test();
|
159 |
}
|
160 |
}
|
@@ -184,7 +192,7 @@ function ct_get_options() {
|
|
184 |
function ct_def_options() {
|
185 |
$lang = get_bloginfo('language');
|
186 |
return array(
|
187 |
-
'server' => 'http://moderate.cleantalk.
|
188 |
'apikey' => __('enter key', 'cleantalk'),
|
189 |
'autoPubRevelantMess' => '1',
|
190 |
'registrations_test' => '1',
|
@@ -256,6 +264,8 @@ function ct_feedback($hash, $message = null, $allow) {
|
|
256 |
*/
|
257 |
function ct_send_feedback($feedback_request = null) {
|
258 |
|
|
|
|
|
259 |
if (empty($feedback_request) && isset($_SESSION['feedback_request']) && preg_match("/^[a-z0-9\;\:]+$/", $_SESSION['feedback_request'])) {
|
260 |
$feedback_request = $_SESSION['feedback_request'];
|
261 |
unset($_SESSION['feedback_request']);
|
@@ -417,7 +427,7 @@ function ct_footer_add_cookie() {
|
|
417 |
* @param int $post_id Post ID, not used
|
418 |
*/
|
419 |
function ct_add_hidden_fields($post_id = null, $field_name = 'ct_checkjs', $return_string = false, $cookie_check = false) {
|
420 |
-
global $ct_checkjs_def, $ct_formtime_label;
|
421 |
|
422 |
$ct_checkjs_key = ct_get_checkjs_value();
|
423 |
|
@@ -460,6 +470,8 @@ function ct_set_challenge(val) {
|
|
460 |
';
|
461 |
$html = sprintf($html, $field_id, $field_name, $ct_checkjs_def, $field_id, $ct_checkjs_key);
|
462 |
};
|
|
|
|
|
463 |
|
464 |
if ($return_string === true) {
|
465 |
return $html;
|
@@ -593,16 +605,8 @@ function ct_preprocess_comment($comment) {
|
|
593 |
return $comment;
|
594 |
}
|
595 |
|
596 |
-
|
597 |
-
if (
|
598 |
-
$wp_host = $matches[1];
|
599 |
-
|
600 |
-
$author_host = null;
|
601 |
-
if (preg_match("@^(?:https?://)([^/:]+)@i", $comment['comment_author_url'], $matches))
|
602 |
-
$author_host = $matches[1];
|
603 |
-
|
604 |
-
// Skip tests for selfmade pingback's
|
605 |
-
if ($comment['comment_type'] == 'pingback' && $wp_host !== null && $wp_host === $author_host) {
|
606 |
return $comment;
|
607 |
}
|
608 |
|
@@ -964,6 +968,38 @@ function ct_login_message($message) {
|
|
964 |
return $message;
|
965 |
}
|
966 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
967 |
/**
|
968 |
* Test users registration
|
969 |
* @return array with errors
|
@@ -1410,7 +1446,7 @@ function ct_check_wplp(){
|
|
1410 |
* @return array with errors
|
1411 |
*/
|
1412 |
function ct_s2member_registration_test() {
|
1413 |
-
global $ct_agent_version, $ct_post_data_label;
|
1414 |
|
1415 |
$options = ct_get_options();
|
1416 |
if ($options['registrations_test'] == 0) {
|
@@ -1436,10 +1472,16 @@ function ct_s2member_registration_test() {
|
|
1436 |
$sender_email = null;
|
1437 |
if (isset($_POST[$ct_post_data_label]['email']))
|
1438 |
$sender_email = $_POST[$ct_post_data_label]['email'];
|
|
|
|
|
|
|
1439 |
|
1440 |
$sender_nickname = null;
|
1441 |
if (isset($_POST[$ct_post_data_label]['username']))
|
1442 |
$sender_nickname = $_POST[$ct_post_data_label]['username'];
|
|
|
|
|
|
|
1443 |
|
1444 |
$config = get_option('cleantalk_server');
|
1445 |
|
3 |
Plugin Name: Anti-spam by CleanTalk
|
4 |
Plugin URI: http://cleantalk.org
|
5 |
Description: Cloud antispam for comments, registrations and contacts. The plugin doesn't use CAPTCHA, Q&A, math, counting animals or quiz to stop spam bots.
|
6 |
+
Version: 2.47
|
7 |
Author: СleanTalk <welcome@cleantalk.ru>
|
8 |
Author URI: http://cleantalk.org
|
9 |
*/
|
10 |
|
11 |
define('CLEANTALK_PLUGIN_DIR', plugin_dir_path(__FILE__));
|
12 |
|
13 |
+
$ct_agent_version = 'wordpress-247';
|
14 |
+
$ct_plugin_name = 'Anti-spam by CleanTalk';
|
15 |
$ct_checkjs_frm = 'ct_checkjs_frm';
|
16 |
$ct_checkjs_register_form = 'ct_checkjs_register_form';
|
17 |
$ct_session_request_id_label = 'request_id';
|
57 |
// Flag indicates active JetPack comments
|
58 |
$ct_jp_comments = false;
|
59 |
|
60 |
+
// S2member PayPal post data label
|
61 |
$ct_post_data_label = 's2member_pro_paypal_registration';
|
62 |
|
63 |
+
// S2member Auth.Net post data label
|
64 |
+
$ct_post_data_authnet_label = 's2member_pro_authnet_registration';
|
65 |
+
|
66 |
// Form time load label
|
67 |
$ct_formtime_label = 'formtime';
|
68 |
|
85 |
add_filter('registration_errors', 'ct_registration_errors', 10, 3);
|
86 |
add_action('user_register', 'ct_user_register');
|
87 |
|
88 |
+
// Multisite registrations
|
89 |
+
add_action('signup_extra_fields','ct_register_form');
|
90 |
+
add_filter('wpmu_validate_user_signup', 'ct_registration_errors_wpmu', 10, 3);
|
91 |
+
|
92 |
// BuddyPress
|
93 |
add_action('bp_before_registration_submit_buttons','ct_register_form');
|
94 |
add_filter('bp_signup_validate', 'ct_registration_errors');
|
132 |
* @return mixed[] Array of options
|
133 |
*/
|
134 |
function ct_init() {
|
135 |
+
global $ct_wplp_result_label, $ct_jp_comments, $ct_post_data_label, $ct_post_data_authnet_label;
|
136 |
|
137 |
ct_init_session();
|
138 |
|
162 |
}
|
163 |
|
164 |
// intercept S2member POST
|
165 |
+
if (defined('WS_PLUGIN__S2MEMBER_PRO_VERSION') && (isset($_POST[$ct_post_data_label]['email']) || isset($_POST[$ct_post_data_authnet_label]['email']))){
|
166 |
ct_s2member_registration_test();
|
167 |
}
|
168 |
}
|
192 |
function ct_def_options() {
|
193 |
$lang = get_bloginfo('language');
|
194 |
return array(
|
195 |
+
'server' => 'http://moderate.cleantalk.org',
|
196 |
'apikey' => __('enter key', 'cleantalk'),
|
197 |
'autoPubRevelantMess' => '1',
|
198 |
'registrations_test' => '1',
|
264 |
*/
|
265 |
function ct_send_feedback($feedback_request = null) {
|
266 |
|
267 |
+
return false;
|
268 |
+
|
269 |
if (empty($feedback_request) && isset($_SESSION['feedback_request']) && preg_match("/^[a-z0-9\;\:]+$/", $_SESSION['feedback_request'])) {
|
270 |
$feedback_request = $_SESSION['feedback_request'];
|
271 |
unset($_SESSION['feedback_request']);
|
427 |
* @param int $post_id Post ID, not used
|
428 |
*/
|
429 |
function ct_add_hidden_fields($post_id = null, $field_name = 'ct_checkjs', $return_string = false, $cookie_check = false) {
|
430 |
+
global $ct_checkjs_def, $ct_formtime_label, $ct_plugin_name;
|
431 |
|
432 |
$ct_checkjs_key = ct_get_checkjs_value();
|
433 |
|
470 |
';
|
471 |
$html = sprintf($html, $field_id, $field_name, $ct_checkjs_def, $field_id, $ct_checkjs_key);
|
472 |
};
|
473 |
+
|
474 |
+
$html .= '<noscript><p><b>Please enable JavaScript to pass anti-spam protection!</b><br />Here are the instructions how to enable JavaScript in your web browser <a href="http://www.enable-javascript.com" rel="nofollow" target="_blank">http://www.enable-javascript.com</a>.<br />' . $ct_plugin_name . '.</p></noscript>';
|
475 |
|
476 |
if ($return_string === true) {
|
477 |
return $html;
|
605 |
return $comment;
|
606 |
}
|
607 |
|
608 |
+
// Skip pingback anti-spam test
|
609 |
+
if ($comment['comment_type'] == 'pingback') {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
610 |
return $comment;
|
611 |
}
|
612 |
|
968 |
return $message;
|
969 |
}
|
970 |
|
971 |
+
/**
|
972 |
+
* Test users registration for multisite enviroment
|
973 |
+
* @return array with errors
|
974 |
+
*/
|
975 |
+
function ct_registration_errors_wpmu($errors) {
|
976 |
+
//
|
977 |
+
// Multisite actions
|
978 |
+
//
|
979 |
+
$sanitized_user_login = null;
|
980 |
+
if (isset($errors['user_name'])) {
|
981 |
+
$sanitized_user_login = $errors['user_name'];
|
982 |
+
$wpmu = true;
|
983 |
+
}
|
984 |
+
$user_email = null;
|
985 |
+
if (isset($errors['user_email'])) {
|
986 |
+
$user_email = $errors['user_email'];
|
987 |
+
$wpmu = true;
|
988 |
+
}
|
989 |
+
|
990 |
+
if ($wpmu && isset($errors['errors']->errors) && count($errors['errors']->errors) > 0) {
|
991 |
+
return $errors;
|
992 |
+
}
|
993 |
+
$errors['errors'] = ct_registration_errors($errors['errors'], $sanitized_user_login, $user_email);
|
994 |
+
|
995 |
+
// Show CleanTalk errors in user_name field
|
996 |
+
if (isset($errors['errors']->errors['ct_error'])) {
|
997 |
+
$errors['errors']->errors['user_name'] = $errors['errors']->errors['ct_error'];
|
998 |
+
unset($errors['errors']->errors['ct_error']);
|
999 |
+
}
|
1000 |
+
|
1001 |
+
return $errors;
|
1002 |
+
}
|
1003 |
/**
|
1004 |
* Test users registration
|
1005 |
* @return array with errors
|
1446 |
* @return array with errors
|
1447 |
*/
|
1448 |
function ct_s2member_registration_test() {
|
1449 |
+
global $ct_agent_version, $ct_post_data_label, $ct_post_data_authnet_label;
|
1450 |
|
1451 |
$options = ct_get_options();
|
1452 |
if ($options['registrations_test'] == 0) {
|
1472 |
$sender_email = null;
|
1473 |
if (isset($_POST[$ct_post_data_label]['email']))
|
1474 |
$sender_email = $_POST[$ct_post_data_label]['email'];
|
1475 |
+
|
1476 |
+
if (isset($_POST[$ct_post_data_authnet_label]['email']))
|
1477 |
+
$sender_email = $_POST[$ct_post_data_authnet_label]['email'];
|
1478 |
|
1479 |
$sender_nickname = null;
|
1480 |
if (isset($_POST[$ct_post_data_label]['username']))
|
1481 |
$sender_nickname = $_POST[$ct_post_data_label]['username'];
|
1482 |
+
|
1483 |
+
if (isset($_POST[$ct_post_data_authnet_label]['username']))
|
1484 |
+
$sender_nickname = $_POST[$ct_post_data_authnet_label]['username'];
|
1485 |
|
1486 |
$config = get_option('cleantalk_server');
|
1487 |
|
readme.txt
CHANGED
@@ -1,13 +1,13 @@
|
|
1 |
=== Anti-spam by CleanTalk ===
|
2 |
Contributors: znaeff, shagimuratov
|
3 |
-
Tags: antispam, anti-spam, anti spam, spam, spammers, captcha, comments, registration, contact form,
|
4 |
Requires at least: 3.0
|
5 |
Tested up to: 3.9.1
|
6 |
-
Stable tag: 2.
|
7 |
License: GPLv2
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
10 |
-
|
11 |
|
12 |
== Description ==
|
13 |
No CAPTCHA, no questions, no counting animals, no puzzles, no math and no spam bots.
|
@@ -31,11 +31,13 @@ CleanTalk is an antispam protection **4 in 1 for WordPress** that protects login
|
|
31 |
|
32 |
CleanTalk is a transparent antispam protection, we provide detailed statistics of all entering comments and logins. You can always be sure that **there are no errors**. We have developed a mobile app for you to see antispam statistics wherever whenever.
|
33 |
|
34 |
-
We have developed anti-spam for WordPress that would provide **maximum protection from spam** and you can provide for your visitors **a simple and convenient form of comments/registrations without annoying CAPTCHAs and puzzles**. Used to detect spam multistage test that allows us to block up to 100% of spam bots.
|
|
|
|
|
35 |
|
36 |
The plugin developers had a long time experience in front-end, backend and server-side PHP programming, client side JavaScript and HTML programming. We were looking for an anti spam tool which is strong for spam bots and invisible to visitors, but nothing matched their criteria. So, we are started an anti-spam project called CleanTalk.
|
37 |
|
38 |
-
The CleanTalk is premium anti
|
39 |
|
40 |
* Up to 100% protection from spam bots.
|
41 |
* Simple and convenient form of commenting/registrations without captcha.
|
@@ -63,31 +65,31 @@ The setup is done! You can control anti-spam plugin by <a href="http://cleantalk
|
|
63 |
|
64 |
== Frequently Asked Questions ==
|
65 |
|
66 |
-
= How plugin
|
67 |
-
|
68 |
|
69 |
-
|
70 |
-
|
71 |
-
* Checks by Email, IP, web-sites domain at <a href="http://cleantalk.org/blacklists" target="_blank">spam activities list</a>.
|
72 |
-
* Comment submit time. Spam bots usually send post immediately after page load.
|
73 |
|
74 |
-
|
75 |
-
|
|
|
|
|
76 |
|
77 |
= Will anti spam protects my theme? =
|
78 |
-
|
79 |
|
80 |
= How can I test anti-spam protection? =
|
81 |
Please use email **stop_email@example.com** for comments, contacts or signups. Also you can see comments processed by plugin for last 7 days at <a href="http://cleantalk.org/my/show_requests">Control panel</a> or look at folder "Spam" for banned comments.
|
82 |
|
83 |
-
=
|
84 |
Plugin Anti-spam by CleanTalk stops up to 100% of spam comments, spam signups (registrations) and spam contact emails. More over, by determining the relevance of the comment text, the plugin stops about 96% spam comments submitted manually via browser.
|
85 |
|
86 |
= What about pingback, trackback spam? =
|
87 |
-
Plugin by default pass
|
88 |
|
89 |
= Should I use another antispam plugins? =
|
90 |
-
|
91 |
|
92 |
= The plugin WordPress MultiUser (WPMU or WordPress network) compatible? =
|
93 |
The plugin is WordPress MultiUser (WPMU or WordPress network) compatible. Each blog in multisite environment has individual anit spam options for spam bots protection.
|
@@ -106,6 +108,9 @@ The plugin has several options to detect spam bots and humans. If you just post
|
|
106 |
|
107 |
The comments will be passed, becuase the plugin detect sender as a human. So, use special email *stop_email@example.com* to test anti-spam or wait a few days to see how the plugin works.
|
108 |
|
|
|
|
|
|
|
109 |
== Other notes ==
|
110 |
|
111 |
= Troubleshooting Guide =
|
@@ -118,6 +123,10 @@ If you're having trouble getting things to work after installing the plugin, her
|
|
118 |
1. If you have spam comments, signups or contacts please check the Access key at plugin settings. The key should be same as you can find in service <a href="https://cleantalk.org/my/">Control panel</a>.
|
119 |
1. If you have spam contact emails after plugin installation, please check your plugin with list of supported contact forms (see section **Anti-spam protection**).
|
120 |
|
|
|
|
|
|
|
|
|
121 |
= Requirements =
|
122 |
WordPress 3.0 at least. PHP 4, 5 with CURL or file_get_contents() function and enabled 'allow_url_fopen' setting. <a href="http://cleantalk.org/register?platform=wordpress">Sign up</a> to get an Access key.
|
123 |
|
@@ -131,6 +140,10 @@ WordPress 3.0 at least. PHP 4, 5 with CURL or file_get_contents() function and e
|
|
131 |
1. Anti spam stopped spam bot at the registration form.
|
132 |
|
133 |
== Changelog ==
|
|
|
|
|
|
|
|
|
134 |
= 2.44 2014-05-12 =
|
135 |
* Added: Anti-spam protection for S2Member framework.
|
136 |
* Improved: JavaScript anti-spam test.
|
@@ -312,6 +325,10 @@ WordPress 3.0 at least. PHP 4, 5 with CURL or file_get_contents() function and e
|
|
312 |
* First version
|
313 |
|
314 |
== Upgrade Notice ==
|
|
|
|
|
|
|
|
|
315 |
= 2.44 2014-05-12 =
|
316 |
* Added: Anti-spam protection for S2Member framework.
|
317 |
* Improved: Plugin load time for backend and frontend.
|
1 |
=== Anti-spam by CleanTalk ===
|
2 |
Contributors: znaeff, shagimuratov
|
3 |
+
Tags: antispam, anti-spam, anti spam, spam, spammers, captcha, comments, registration, contact form, blacklist, math, signup, formidable, bot, spam bots, quiz, spammy, s2member, wordpress, support, BuddyPress, bbpress, landing pages, fast secure contact form, WooCommerce, jetpack, cache, question
|
4 |
Requires at least: 3.0
|
5 |
Tested up to: 3.9.1
|
6 |
+
Stable tag: 2.46
|
7 |
License: GPLv2
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
10 |
+
SPAM defender for WordPress - no spam comments, no spam registrations, no spam contact emails. It's robutst anti-spam without CAPTCHAs.
|
11 |
|
12 |
== Description ==
|
13 |
No CAPTCHA, no questions, no counting animals, no puzzles, no math and no spam bots.
|
31 |
|
32 |
CleanTalk is a transparent antispam protection, we provide detailed statistics of all entering comments and logins. You can always be sure that **there are no errors**. We have developed a mobile app for you to see antispam statistics wherever whenever.
|
33 |
|
34 |
+
We have developed anti-spam for WordPress that would provide **maximum protection from spam bots** and you can provide for your visitors **a simple and convenient form of comments/registrations without annoying CAPTCHAs and puzzles**. Used to detect spam multistage test that allows us to block up to 100% of spam bots.
|
35 |
+
|
36 |
+
The anti spam method offered by CleanTalk allows to switch from the methods that trouble the communication (CAPTCHA, question-answer etc.) to a more convenient one.
|
37 |
|
38 |
The plugin developers had a long time experience in front-end, backend and server-side PHP programming, client side JavaScript and HTML programming. We were looking for an anti spam tool which is strong for spam bots and invisible to visitors, but nothing matched their criteria. So, we are started an anti-spam project called CleanTalk.
|
39 |
|
40 |
+
The CleanTalk is premium anti spam for WordPress, please look at the <a href="http://cleantalk.org/price">pricing</a>. We try to provide the service at the highest level and we can not afford to offer a free version of our service, as this will immediately affect the quality of providing anti spam protection. Paying for a year of service, you save a lot more and get:
|
41 |
|
42 |
* Up to 100% protection from spam bots.
|
43 |
* Simple and convenient form of commenting/registrations without captcha.
|
65 |
|
66 |
== Frequently Asked Questions ==
|
67 |
|
68 |
+
= How does the plugin work with spam comments? =
|
69 |
+
Spam comments moves to SPAM folder. First comment from a new author plugin compares with post and previous comments. If the relevance of the comment is good enough it gets approval at the blog without manual approval.
|
70 |
|
71 |
+
= How does the plugin stop spam? =
|
72 |
+
Plugin uses several simple tests to stop spammers.
|
|
|
|
|
73 |
|
74 |
+
1. JavaScript anti spam test. 99% spam bots doesn't have all JavaScript functions support. So, the plugin has code which can run normal visitor and can't run the spam bot.
|
75 |
+
1. Checks by Email, IP, domains at spam activities list. The plugin online use spam activity database at cleantalk.org, which are consist more then 1 billion records about spam activity IPs, Email, Domains and ASN. If the senders IP or Email matches with database, the sender gets some spam scores. To reduce false/positive rate the plugin doesn't use only blacklist test to ban spammers. The sender will be banned only if multiple spam test failed.
|
76 |
+
1. Comment submit time. Spam bots usually send post immediately after page load, because spam bots not really fill the web form, they are only send $_POST data to the blog. The normal visitor send the data within several seconds or minutes.
|
77 |
+
1. Relevance test for the comments. Spam bots posts send to the blog comments which are not matched with article by relevance, so the plugin can filter spam bots with offtop filter.
|
78 |
|
79 |
= Will anti spam protects my theme? =
|
80 |
+
Yes, it will. The plugin compatible with any WordPress themes.
|
81 |
|
82 |
= How can I test anti-spam protection? =
|
83 |
Please use email **stop_email@example.com** for comments, contacts or signups. Also you can see comments processed by plugin for last 7 days at <a href="http://cleantalk.org/my/show_requests">Control panel</a> or look at folder "Spam" for banned comments.
|
84 |
|
85 |
+
= Is the plugin effective against spam bots? =
|
86 |
Plugin Anti-spam by CleanTalk stops up to 100% of spam comments, spam signups (registrations) and spam contact emails. More over, by determining the relevance of the comment text, the plugin stops about 96% spam comments submitted manually via browser.
|
87 |
|
88 |
= What about pingback, trackback spam? =
|
89 |
+
Plugin by default pass pingbacks without any checks. All trackbacks will be blocked if the sender have spam activity.
|
90 |
|
91 |
= Should I use another antispam plugins? =
|
92 |
+
CleanTalk stops up to 100% of spam bots, so you can disable other anti spam plugins (especially CAPTCHA like anti spam plugins). In some cases several anti-spam plugins can conflict, so it will be better use just one plugin.
|
93 |
|
94 |
= The plugin WordPress MultiUser (WPMU or WordPress network) compatible? =
|
95 |
The plugin is WordPress MultiUser (WPMU or WordPress network) compatible. Each blog in multisite environment has individual anit spam options for spam bots protection.
|
108 |
|
109 |
The comments will be passed, becuase the plugin detect sender as a human. So, use special email *stop_email@example.com* to test anti-spam or wait a few days to see how the plugin works.
|
110 |
|
111 |
+
= Can I use CleanTalk with cache plugins? =
|
112 |
+
CleanTalk doesn't use static HTML code into templates, so all anit spam functions will works correctly with any WordPress cache plugins.
|
113 |
+
|
114 |
== Other notes ==
|
115 |
|
116 |
= Troubleshooting Guide =
|
123 |
1. If you have spam comments, signups or contacts please check the Access key at plugin settings. The key should be same as you can find in service <a href="https://cleantalk.org/my/">Control panel</a>.
|
124 |
1. If you have spam contact emails after plugin installation, please check your plugin with list of supported contact forms (see section **Anti-spam protection**).
|
125 |
|
126 |
+
= CAPTCHA =
|
127 |
+
The annoying picture with curved and sloping symbols, which are offered to the visitor to fill in. It is supposed that spam bots won’t discern these symbols, but a visitor will. CAPTCHA provokes great irritation, but if one wants to speak out, he has to fill in these symbols time after time, making mistakes and starting once again. At the sight of CAPTCHA and after input errors, many visitors leave the resource. Thus, CAPTCHA helps to protect the resource from visitors. Spam bots can automatically recognize Captcha.
|
128 |
+
Spam bots can not pass through the anti-spam CleanTalk, complex invisible checks can immediately detect spam bots.
|
129 |
+
|
130 |
= Requirements =
|
131 |
WordPress 3.0 at least. PHP 4, 5 with CURL or file_get_contents() function and enabled 'allow_url_fopen' setting. <a href="http://cleantalk.org/register?platform=wordpress">Sign up</a> to get an Access key.
|
132 |
|
140 |
1. Anti spam stopped spam bot at the registration form.
|
141 |
|
142 |
== Changelog ==
|
143 |
+
= 2.44 2014-05-19 =
|
144 |
+
* Added: HTML notice about the need to enable JavaScript.
|
145 |
+
* Fixed: Fixed pingbacks anti-spam test.
|
146 |
+
|
147 |
= 2.44 2014-05-12 =
|
148 |
* Added: Anti-spam protection for S2Member framework.
|
149 |
* Improved: JavaScript anti-spam test.
|
325 |
* First version
|
326 |
|
327 |
== Upgrade Notice ==
|
328 |
+
= 2.44 2014-05-19 =
|
329 |
+
* Added: HTML notice about the need to enable JavaScript.
|
330 |
+
* Fixed: Fixed pingbacks anti-spam test.
|
331 |
+
|
332 |
= 2.44 2014-05-12 =
|
333 |
* Added: Anti-spam protection for S2Member framework.
|
334 |
* Improved: Plugin load time for backend and frontend.
|
screenshot-1.png
CHANGED
Binary file
|