Moderar comentários Spam automaticamente no WordPress

Siga o Ferramentas Blog: Canal no Youtube | Facebook | Twitter | Google+
Acesse AGORA: https://blogueiro.pro e se torne um Blogueiro de Elite.

spam Quer ficar livre de Spams que chegam a todo instante na sua caixa de comentários? O WordPress tem um ótimo filtro de Spam, mas é preciso ficar moderando cada comentário que chega e excluir os indesejados manualmente. Descobri uma forma de excluir Spams previamente e filtrar boa parte do que chega em seus comentários, evitando perder tempo com o que é evidentemente um Spam de comentários. Veja como resolver isso de forma bem simples.

 

Se você tem um blog no WordPress.org, com domínio e hospedagem próprios, pode usar um trecho de código bem simples e fácil de customizar, que vai moderar e excluir automaticamente os comentários que você receber, sumindo com os Spams. Isso vai te ajudar a ganhar tempo na moderação.

 

Vamos direto ao assunto e aplicar o tutorial.

1. Abra o painel do WordPress em sua conta e clique no menu “Aparência” ~> “Editor” e abra o arquivo “Funções do tema (functions.php)” como mostra a imagem:

 

editar-tema-wp-functions2

 

2. Adicione o seguinte trecho de código na penúltima linha:

 

function in_comment_post_like($string, $array) {
    foreach($array as $ref) { if(strstr($string, $ref)) { return true; } }
    return false;
}
function drop_bad_comments() {
    if (!empty($_POST[‘comment’])) {
        $post_comment_content = $_POST[‘comment’];
        $lower_case_comment = strtolower($_POST[‘comment’]);
        $bad_comment_content = array(
            ‘viagra’,
            ‘hydrocodone’,
            ‘hair loss’,
            ‘[url=http’,
            ‘[link=http’,
            ‘xanax’,
            ‘tramadol’,
            ‘russian girls’,
            ‘russian brides’,
            ‘lorazepam’,
            ‘adderall’,
            ‘dexadrine’,
            ‘no prescription’,
            ‘oxycontin’,
            ‘without a prescription’,
            ‘sex pics’,
            ‘family incest’,
            ‘online casinos’,
            ‘online dating’,
            ‘cialis’,
            ‘best forex’,
            ‘amoxicillin’

        );
        if (in_comment_post_like($lower_case_comment, $bad_comment_content)) {
            $comment_box_text = wordwrap(trim($post_comment_content), 80, "\n  ", true);
            $txtdrop = fopen(‘/var/log/httpd/wp_post-logger/nullamatix.com-text-area_dropped.txt’, ‘a’);
            fwrite($txtdrop, "  ————–\n  [COMMENT] = " . $post_comment_content . "\n  ————–\n");
            fwrite($txtdrop, "  [SOURCE_IP] = " . $_SERVER[‘REMOTE_ADDR’] . " @ " . date("F j, Y, g:i a") . "\n");
            fwrite($txtdrop, "  [USERAGENT] = " . $_SERVER[‘HTTP_USER_AGENT’] . "\n");
            fwrite($txtdrop, "  [REFERER  ] = " . $_SERVER[‘HTTP_REFERER’] . "\n");
            fwrite($txtdrop, "  [FILE_NAME] = " . $_SERVER[‘SCRIPT_NAME’] . " – [REQ_URI] = " . $_SERVER[‘REQUEST_URI’] . "\n");
            fwrite($txtdrop, ‘————–**********——————‘."\n");
            header("HTTP/1.1 406 Not Acceptable");
            header("Status: 406 Not Acceptable");
            header("Connection: Close");
            wp_die( __(‘bang bang.’) );
        }
    }
}
add_action(‘init’, ‘drop_bad_comments’);

 

3. Todas as palavras destacadas em vermelho vão ser procuradas em cada comentário recebido e se alguma delas aparecer em qualquer comentário, este será excluído automaticamente. Se seguir o padrão dessa lista, você poderá adicionar novas palavras ou mesmo excluir algumas de acordo com o conteúdo de seu blog ou com o tipo de Spam que mais atormenta sua caixa de comentários.

 

Veja nosso artigos sobre o WordPress com mais dicas e tutoriais.

 

Fonte: WPRecipes – Aut
omatically refuse spam comments on your WordPress blog
(em inglês)

.

1 Comentário

  1. Valeu Marcos, estava a procura de algo assim. Comecei a receber alguns spans com nome de medicamento e já estava perdendo a paciência.

    Responder

Deixe um comentário

Ao comentar você concorda com nossa Política de Comentários.