2013-04-19 3 views
0

Я пытаюсь использовать сервис captcha reCAPTCHA.net, однако я бы хотел использовать пользовательские переводы (https://developers.google.com/recaptcha/docs/customization#i18n), поскольку встроенные в них не охватывают все языки. Кроме того, вместо того, чтобы использовать одну из своих стандартных тем, я хотел бы пойти полностью обычай, чтобы соответствовать взгляду captcha на мой сайт.Recaptcha Translations

Ниже приведен фрагмент того, что я пытаюсь, однако по какой-то смешной причине он не работает (текст остается на английском, а не переведено). Мне было интересно, будут ли текстовые ссылки «Получить еще один Captcha», «Получить аудио Captcha», «Справка» и т. Д. Если я правильно понимаю, они должны переводить, в зависимости от строк, которые я установил в атрибуте custom_translations. Кроме того, если я заменил содержимое текстовых ссылок значком вместо текста, будут ли значки получать тег ALT с соответствующим контентом автоматически?

Так, например, если я изменить это:

<div class="recaptcha_only_if_image"><a href="javascript:Recaptcha.switch_type('audio')">Get an audio CAPTCHA</a></div> 

Для этого будет альт теги изображения будут предварительно заполнены автоматически, так что при наведении курсора на иконку он говорит: «Получить аудио капчи» ?

<div class="recaptcha_only_if_image"><a href="javascript:Recaptcha.switch_type('audio')"><img height="16" width="16" src="audio.gif" alt="" /></a></div> 

Я задаю этот вопрос, когда я попытался выбрать одну из стандартных тем, таких как `тему:«красный», теги альт были переведены автоматически, в зависимости от языка.

Вот фрагмент моего кода. Я удалил свой открытый ключ из ниже.

JS:

<script type="text/javascript"> 
    var RecaptchaOptions = { 
      custom_translations : { 
        instructions_visual : "Scrivi le due parole:", 
        instructions_audio : "Trascrivi ci\u00f2 che senti:", 
        play_again : "Riascolta la traccia audio", 
        cant_hear_this : "Scarica la traccia in formato MP3", 
        visual_challenge : "Modalit\u00e0 visiva", 
        audio_challenge : "Modalit\u00e0 auditiva", 
        refresh_btn : "Chiedi due nuove parole", 
        help_btn : "Aiuto", 
        incorrect_try_again : "Scorretto. Riprova.", 
      }, 
      lang : 'it', // Unavailable while writing this code (just for audio challenge) 
      theme : 'custom', // Make sure there is no trailing ',' at the end of the RecaptchaOptions dictionary 
     custom_theme_widget: 'recaptcha_widget' 
    }; 
</script> 

HTML

<div id="recaptcha_widget" style="display:none"> 

<div id="recaptcha_image"></div> 
<div class="recaptcha_only_if_incorrect_sol" style="color:red">Incorrect please try again</div> 

<span class="recaptcha_only_if_image">Enter the words above:</span> 
<span class="recaptcha_only_if_audio">Enter the numbers you hear:</span> 

<input type="text" id="recaptcha_response_field" name="recaptcha_response_field" /> 

<div><a href="javascript:Recaptcha.reload()">Get another CAPTCHA</a></div> 
<div class="recaptcha_only_if_image"><a href="javascript:Recaptcha.switch_type('audio')">Get an audio CAPTCHA</a></div> 
<div class="recaptcha_only_if_audio"><a href="javascript:Recaptcha.switch_type('image')">Get an image CAPTCHA</a></div> 

<div><a href="javascript:Recaptcha.showhelp()">Help</a></div> 

</div> 

<script type="text/javascript" 
src="http://www.google.com/recaptcha/api/challenge?k=MY_PUBLIC_KEY"> 
</script> 
<noscript> 
<iframe src="http://www.google.com/recaptcha/api/noscript?k=MY_PUBLIC_KEY" 
    height="300" width="500" frameborder="0"></iframe><br> 
<textarea name="recaptcha_challenge_field" rows="3" cols="40"> 
</textarea> 
<input type="hidden" name="recaptcha_response_field" 
    value="manual_challenge"> 
</noscript> 

Я также прилагаю скриншот результата.
enter image description here

+0

Где находятся функции javascript? –

+0

@AlexRuhl, с какими функциями javascript вы точно ссылаетесь? – user1809790

ответ

0

Как я понимаю, custom_translations JavaScript объект не будет использоваться, если вы используете свой собственный шаблон HTML. В этом случае вам придется вручную переводить, используя ту же локализацию, что и остальные приложения. custom_translations используется, если вы не предоставляете HTML самостоятельно и вместо этого используете одну из предопределенных тем.

Смежные вопросы