Я достаточно хорошо разбираюсь в кодировании, чтобы подумать, что могу вручную добавить ее в: /com_sppagebuilder/addons/ajax_contact/site.php и получить все заработало.
Я добавил: ;
И плагин Joomla ReCaptcha активирован.
Я не знал, нужно ли это делать, но добавил в заголовок
При этом ReCaptcha работает нормально.
Моя проблема связана с проверкой.
Я пытался добавить код проверки в тег site.php, но я считаю, что SP Page Builder использует JFactory::getMailer(); чтобы подготовить электронное письмо и отправить его, и я ничего об этом не знаю.
Поэтому я не знаю, куда я могу добавить свой код проверки ReCaptcha, и поскольку я нашел в Интернете несколько версий этого кода, я действительно не знаю, какую из них использовать.
Я повсюду искал ответы на вопросы, как выполнить эту проверку... и пробовал много разных вещей, но он все еще не работает.
Может ли кто-нибудь помочь мне с этим?
Большое спасибо!< /p>
РЕДАКТИРОВАТЬ
Я думаю, что мой вопрос недостаточно ясен:
Я хочу добавить Recaptcha, которая уже отлично работает в других формах на моем веб-сайте (так что это не проблема конфигурации Joomla). Я хочу использовать следующую контактную форму SP Page Builder, а не RSFormPro, как на остальной части веб-сайта. Процесс проверки должен выполняться в этом разделе, но я попытался добавить код проверки Google и попробовал несколько его версий, которые нашел в Интернете, и он вообще не работает:
Код: Выделить всё
public static function getAjax() {
$input = JFactory::getApplication()->input;
$mail = JFactory::getMailer();
//inputs
$inputs = $input->get('data', array(), 'ARRAY');
foreach ($inputs as $input) {
if( $input['name'] == 'recipient' ) {
$recipient = base64_decode($input['value']);
}
if( $input['name'] == 'email' ) {
$email = $input['value'];
}
if( $input['name'] == 'name' ) {
$name = $input['value'];
}
if( $input['name'] == 'subject' ) {
$subject = $input['value'];
}
if( $input['name'] == 'message' ) {
$message = nl2br( $input['value'] );
}
}
/*Try at the validation*/
$captcha_plugin = JFactory::getConfig()->get('captcha');
if ($captcha_plugin != '0') {
$captcha = JCaptcha::getInstance($captcha_plugin);
$field_id = 'google-recaptcha';
print $captcha->display($field_id, $field_id, 'g-recaptcha');
}
$sender = array($email, $name);
$mail->setSender($sender);
$mail->addRecipient($recipient);
$mail->setSubject($subject);
$mail->isHTML(true);
$mail->Encoding = 'base64';
$mail->setBody($message);
if ($mail->Send()) {
return ''. JText::_('COM_SPPAGEBUILDER_ADDON_AJAX_CONTACT_SUCCESS') .'';
} else {
return ''. JText::_('COM_SPPAGEBUILDER_ADDON_AJAX_CONTACT_FAILED') .'';
}
}
Спасибо!
Подробнее здесь: https://stackoverflow.com/questions/432 ... -recaptcha
Мобильная версия