I have noticed many people have been experiencing the problem that MazZziKa and Aircut are having. That is, the reCAPTCHA works (If one enters the wrong text then it will not go on to the next step) but on the final step of registration, users are redirected to the first step of the registration process.
I would appreciate it if any developer would help me out with this one, since I am at loss of ideas. Here are the registration handlers:
// Check the recaptcha on WordPress MU
function check_recaptcha_wpmu($result) {
global $_POST, $recaptcha_opt;
if (isset($_POST['blog_id']))
return $result;
if (empty($_POST['recaptcha_response_field']) || $_POST['recaptcha_response_field'] == '') {
$result['errors']->add('blank_captcha', 'Please complete the reCAPTCHA.');
return $result;
}
$response = recaptcha_check_answer($recaptcha_opt['privkey'],
$_SERVER['REMOTE_ADDR'],
$_POST['recaptcha_challenge_field'],
$_POST['recaptcha_response_field'] );
if (!$response->is_valid)
if ($response->error == 'incorrect-captcha-sol') {
$result['errors']->add('captcha_wrong', 'That reCAPTCHA was incorrect.');
echo "<div class=\"error\">Incorrect CAPTCHA</div>";
}
return $result;
}
And here are the hooks:
if ($recaptcha_opt['re_registration']) {
if ($wpmu == 1)
{
add_filter('wpmu_validate_user_signup', 'check_recaptcha_wpmu');
add_filter('wpmu_validate_blog_signup', 'check_recaptcha_wpmu');
}
I will continue to investigate.