Descrição
Really Simple CAPTCHA não funciona sozinho e foi desenhado para trabalhar em conjunto com outros plug-ins. Ele foi originalmente criado para o plug-in Contact Form 7, entretanto, você pode usá-lo com seu próprio plug-in.
Nota: este produto é “realmente simples” como seu nome sugere, isso é, não é fortemente seguro. Se você precisa de segurança perfeita, procure outras soluções.
Como funciona?
O Really Simple CAPTCHA não usa “sessões” do PHP para armazenar estados, diferente de muitas outras soluções de CAPTCHA em PHP, ele armazena como arquivos temporários. Isso permite a você integrá-lo ao WordPress sem se preocupar com possíveis conflitos.
Quando você gera um CAPTCHA, o Really Simple CAPTCHA cria dois arquivos para isso: um é a imagem do CAPTCHA e o outro é um arquivo texto que guarda a resposta correta para o CAPTCHA.
Os dois arquivos terão o mesmo prefixo (aleatório) em seu nome, por exemplo: “a7hk3ux8p.png” e “a7hk3ux8p.txt.” Neste exemplo, quando o respondente digitar “K5GF” como uma resposta para a imagem “a7hk3ux8p.png”, o Really Simple CAPTCHA calcula o hash de “K5GF” e o testa contra o hash armazenado em “a7hk3ux8p.txt”. Se os dois corresponderem, a resposta é confirmada como correta.
Como usar no seu plugin?
Observação: O texto a seguir são instruções para desenvolvedores de plug-ins.
Primeiro, crie uma instância da classe ReallySimpleCaptcha:
$captcha_instance = new ReallySimpleCaptcha();
Você pode mudar as variáveis da instância como quiser.
// Change the background color of CAPTCHA image to black
$captcha_instance->bg = array( 0, 0, 0 );
Consulte o arquivo really-simple-captcha.php se você está interessado em outras variáveis.
Gera uma palavra aleatória para o CAPTCHA.
$word = $captcha_instance->generate_random_word();
Gera um arquivo de imagem e um arquivo de texto correspondente na pasta temporária.
$prefix = mt_rand();
$captcha_instance->generate_image( $prefix, $word );
Então, mostra a imagem e obtenha a resposta do usuário.
Verifica a correção da resposta.
$correct = $captcha_instance->check( $prefix, $the_answer_from_respondent );
Se the $correct for verdadeiro, pode seguir. Caso contrário, bloqueie o respondente, pois parece que ele não é humano.
Por fim, remova a imagem e o texto temporários, pois eles não serão mais usados.
$captcha_instance->remove( $prefix );
Isso é tudo.
Se você deseja ver um exemplo ao vivo, experimente Contact Form 7.
Instalação
Na maioria dos casos, você pode instalar automaticamente a partir do painel WordPress.
No entanto, se for instalar manualmente, siga estes passos:
- Carregue toda a pasta
really-simple-captcha
para o diretório/wp-content/plugins/
. - Ative o plug-in no menu ‘Plugins’ do seu WordPress.
Informação: não há um painel de controle para este plug-in.
FAQ
-
CAPTCHA não funciona; a imagem não aparece.
-
O Really Simple CAPTCHA precisa das bibliotecas GD e FreeType library instaladas em seu servidor pergunte ao administrador de seu servidor se estão instaladas.
Também faça com que diretório de arquivos temporários seja gravável. A localização do diretório temporário é gerenciada pela variável de instância
tmp_dir
da classe ReallySimpleCaptcha. Note que esta configuração varia dependendo do plug-in que está chamando. Por exemplo: o Contact Form 7 normalmente usawp-contents/uploads/wpcf7_captcha
como diretório temporário, mas pode usar outra pasta, dependendo de suas configurações.Se você tem qualquer dúvida, por favor a submeta ao fórum de suporte do plug-in (por enquanto, só em inglês).
Avaliações
Colaboradores e desenvolvedores
“Really Simple CAPTCHA” é um software com código aberto. As seguintes pessoas contribuíram para este plugin.
Colaboradores“Really Simple CAPTCHA” foi traduzido para 38 localizações. Agradecemos aos tradutores por suas contribuições.
Traduzir “Really Simple CAPTCHA” para o seu idioma.
Interessado no desenvolvimento?
Navegue pelo código, dê uma olhada no repositório SVN ou assine o registro de desenvolvimento via RSS.
Registro de alterações
2.2
- Bumps up the minimum required WordPress version to 6.1.
- Bumps up the minimum required PHP version to 7.4.
- Replaces
ReallySimpleCaptcha::normalize_path()
withwp_normalize_path()
. - Updates Apache directives.
2.1
- Uses
hash_equals()
to compare strings.