File: /var/www/zaklada/wp-content/themes/zaklada/validate.php
<?php
$validation = new \stdClass();
$validation->result = "error";
$validation->msg = "error in google recaptcha";
if(isset($_POST['g-recaptcha-response']) && !empty($_POST['g-recaptcha-response'])) {
// '6LeIxAcTAAAAAGG-vFI1TnRWxMZNFuojJ4WifJWe'; //for testing locally
// '6LdEITsdAAAAAFSjnHtfnGO9HD46izx31k4-_UFY'; //for production
$secret = '6LdEITsdAAAAAFSjnHtfnGO9HD46izx31k4-_UFY';
$verifyResponse = file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret='.$secret.'&response='.$_POST['g-recaptcha-response']);
$responseData = json_decode($verifyResponse);
if($responseData->success) {
$form_data = array();
foreach ($_POST as $label => $value) {
if($label == "g-recaptcha-response") {
continue;
}
$form_data[$label] = $value;
}
$validation->result = "success";
$validation->msg = "google recaptcha check passed";
echo json_encode($validation);
} else { // g-recaptcha response error
$validation->result = "error";
$validation->msg = $responseData;
echo json_encode($validation);
}
} else { // 'g-recaptcha-response' empty or not set
$validation->msg = "error";
echo json_encode($validation);
}
?>