Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Copa WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Como adicionar uma caixa de seleção de opção de privacidade de comentários do GDPR no WordPress

Nota editorial: Ganhamos uma comissão de links de parceiros no WPBeginner. As comissões não afetam as opiniões ou avaliações de nossos editores. Saiba mais sobre Processo editorial.

Deseja adicionar uma caixa de seleção de opção de privacidade de comentários do GDPR no WordPress?

A lei GDPR da União Europeia diz que você precisa obter consentimento explícito para armazenar as informações pessoais de um usuário. Se você tiver comentários ativados em seu site, precisará adicionar uma caixa de seleção de privacidade de comentários para estar em conformidade com o GDPR e evitar uma grande multa.

Neste artigo, mostraremos como adicionar uma caixa de seleção de opção de privacidade de comentários do GDPR ao seu site WordPress.

How to add comment privacy optin checkbox in WordPress

Por que adicionar uma caixa de seleção de aceitação de privacidade de comentários no WordPress?

O Regulamento Geral de Proteção de Dados (GDPR) visa dar aos cidadãos da UE mais controle sobre seus dados pessoais.

Quando essa lei foi introduzida, ela mudou a forma como muitas organizações abordavam a privacidade de dados. Para saber mais sobre esse tópico, consulte nosso guia definitivo para WordPress e conformidade com o GDPR.

Se você não estiver em conformidade com o GDPR, poderá ser multado ou até mesmo ser preso. É por isso que todas as partes do seu site devem estar em conformidade com o GDPR, inclusive o formulário de comentários.

Um formulário de comentários coleta informações pessoais dos visitantes, incluindo seus nomes e endereços de e-mail. O WordPress também armazena essas informações em um cookie do navegador, para que possa preencher automaticamente as informações do usuário no futuro.

Por padrão, o formulário de comentários do WordPress mostra uma caixa de seleção de opção de privacidade de comentários.

The GDPR compliance checkbox, in a WordPress comment form

No entanto, se você não vir essa caixa de seleção em seu site, ela poderá estar desativada pelo seu tema do WordPress.

Como habilitar a caixa de seleção de opção de privacidade de comentários no WordPress

Antes de criar sua própria caixa de privacidade de comentários, é uma boa ideia verificar se seu tema já tem esse recurso incorporado.

Primeiro, vamos verificar se o tema e o núcleo do WordPress estão atualizados, acessando Dashboard ” Updates.

Check for WordPress and theme updates

Se houver atualizações disponíveis, vá em frente e instale-as. Se precisar de ajuda, consulte nosso guia sobre como atualizar o WordPress com segurança.

Depois disso, vá para Configurações ” Discussão e role até “Outras configurações de comentários”. Aqui, marque a caixa ao lado de ‘Show comments cookies opt-in checkbox….’

Enabling the GDPR checkbox in WordPress settings

Feito isso, basta clicar em “Save Changes” (Salvar alterações) para armazenar suas configurações.

Agora, você pode visitar seu site do WordPress para ver se essas alterações adicionaram a caixa de seleção ausente.

Clicking the 'Save Changes' button on the WordPress Discussion settings page

Se você estiver totalmente atualizado e ainda não conseguir ver a caixa de seleção de privacidade de comentários, isso significa que seu tema está substituindo o formulário de comentários padrão do WordPress.

Com isso em mente, recomendamos solicitar ao desenvolvedor do tema que corrija esse problema abrindo um tíquete de suporte. Para obter orientação, consulte nosso guia sobre como solicitar corretamente o suporte do WordPress.

Outra opção é adicionar você mesmo a caixa de seleção de privacidade de comentários ao seu tema do WordPress. Há algumas maneiras diferentes de fazer isso, portanto, use os links rápidos abaixo para ir direto ao método que você deseja usar:

Observação: antes de seguir os tutoriais abaixo, é altamente recomendável fazer backup do seu site para o caso de erros inesperados. Você pode usar um plug-in de backup como o Duplicator.

Além disso, recomendamos a criação de um tema filho, pois isso permite que você atualize o tema do WordPress sem perder a personalização.

Método 1: Adicionar uma caixa de seleção de privacidade de comentários ao seu tema do WordPress (recomendado)

Você pode adicionar uma caixa de seleção de privacidade de comentários ao formulário de comentários do seu tema usando o código personalizado.

Esse método exige que você edite os arquivos do tema, portanto, não é o método mais amigável para iniciantes. No entanto, ele deve funcionar para a maioria dos temas do WordPress. Ele também manterá intactos o estilo e o layout do formulário do seu tema.

Primeiro, você precisa se conectar ao seu site WordPress usando um cliente FTP, como o FileZilla, ou pode usar o gerenciador de arquivos do cPanel da sua hospedagem WordPress. Se você for cliente do SiteGround, poderá usar o gerenciador de arquivos no painel Site Tools.

Se esta é a primeira vez que você usa FTP, consulte nosso guia completo sobre como se conectar ao seu site usando FTP.

Quando estiver conectado, você precisará acessar /wp-content/themes/ e abrir a pasta do seu tema atual do WordPress.

Accessing your theme files using FTP

Você precisará encontrar o código que está substituindo o formulário de comentário padrão do WordPress. Normalmente, você encontrará esse código no arquivo comments.php ou functions.php na pasta do seu tema.

Depois de abrir um desses arquivos, procure por qualquer código que tenha o filtro comment_form_default_fields. Os temas usam esse filtro para substituir o formulário de comentários padrão do WordPress.

Ele terá linhas para todos os campos do formulário de comentários. Cada tema é diferente, mas aqui está um exemplo do código que você está procurando:

$comments_args = array(
            // change the title of send button
            'label_submit'=> esc_html(__('Post Comments','themename')),
            // change the title of the reply section
            'title_reply'=> esc_html(__('Leave a Comment','themename')),
            // redefine your own textarea (the comment body)
            'comment_field' => '
            <div class="form-group"><div class="input-field"><textarea class="materialize-textarea" type="text" rows="10" id="textarea1" name="comment" aria-required="true"></textarea></div></div>',
 
            'fields' => apply_filters( 'comment_form_default_fields', array(
                'author' =>'' .
                  '<div><div class="input-field">' .
                  '<input class="validate" id="name" name="author" placeholder="'. esc_attr(__('Name','themename')) .'" type="text" value="' . esc_attr( $commenter['comment_author'] ) .
                  '" size="30"' . $aria_req . ' /></div></div>',
 
                'email' =>'' .
                  '<div><div class="input-field">' .
                  '<input class="validate" id="email" name="email" placeholder="'. esc_attr(__('Email','themename')) .'" type="email" value="' . esc_attr(  $commenter['comment_author_email'] ) .
                  '" size="30"' . $aria_req . ' /></div></div>',
 
                'url' =>'' .
                  '<div class="form-group">'.
                  '<div><div class="input-field"><input class="validate" placeholder="'. esc_attr(__('Website','themename')) .'" id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) .
                  '" size="30" /></div></div>',
                )
            ),
        );
 
    comment_form($comments_args);   ?> 

Nesse código, você perceberá que o filtro comment_form_default_fields é usado para modificar os campos author, email e URL.

Ele exibe cada campo usando o seguinte formato:

'fieldname' => 'HTML code to display the field',
'anotherfield' => 'HTML code to display the field',

Agora, adicionaremos o campo da caixa de seleção opt-in de privacidade de comentários no final do bloco de código, antes da linha comment_form($comments_args); ?>.

Este é o aspecto que o código deve ter agora, mas você pode simplesmente copiar e colar o código do // Agora, adicionaremos nosso novo comentário de opt-in da caixa de seleção de privacidade:

$comments_args = array(
            // change the title of send button
            'label_submit'=> esc_html(__('Post Comments','themename')),
            // change the title of the reply section
            'title_reply'=> esc_html(__('Leave a Comment','themename')),
            // redefine your own textarea (the comment body)
            'comment_field' => '
            <div class="form-group"><div class="input-field"><textarea class="materialize-textarea" type="text" rows="10" id="textarea1" name="comment" aria-required="true"></textarea></div></div>',
 
            'fields' => apply_filters( 'comment_form_default_fields', array(
                'author' =>'' .
                  '<div><div class="input-field">' .
                  '<input class="validate" id="name" name="author" placeholder="'. esc_attr(__('Name','themename')) .'" type="text" value="' . esc_attr( $commenter['comment_author'] ) .
                  '" size="30"' . $aria_req . ' /></div></div>',
 
                'email' =>'' .
                  '<div><div class="input-field">' .
                  '<input class="validate" id="email" name="email" placeholder="'. esc_attr(__('Email','themename')) .'" type="email" value="' . esc_attr(  $commenter['comment_author_email'] ) .
                  '" size="30"' . $aria_req . ' /></div></div>',
 
                'url' =>'' .
                  '<div class="form-group">'.
                  '<div><div class="input-field"><input class="validate" placeholder="'. esc_attr(__('Website','themename')) .'" id="url" name="url" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) .
                  '" size="30" /></div></div>',
 
// Now we will add our new privacy checkbox opt-in
 
                'cookies' => '<p class="comment-form-cookies-consent"><input id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes"' . $consent . ' />' .
                                             '<label for="wp-comment-cookies-consent">' . __( 'Save my name, email, and website in this browser for the next time I comment.' ) . '</label></p>',
                )
            ),
        );
 
    comment_form($comments_args);   ?> 

Depois de fazer essa alteração, certifique-se de salvar e carregar o arquivo de volta para sua conta de hospedagem do WordPress.

Quando terminar, você poderá visitar seu blog do WordPress para ver as alterações em ação.

Método 2: Substituir o formulário de comentários do seu tema pelo formulário padrão do WordPress

Esse método simplesmente substitui o formulário de comentários do seu tema pelo formulário de comentários padrão do WordPress.

Esse método pode alterar a aparência do formulário de comentários, portanto, não é o melhor método se você quiser manter o estilo e o layout do formulário. Entretanto, depois de fazer essa alteração, você sempre poderá estilizar o formulário de comentários usando CSS personalizado.

Como no método anterior, a primeira etapa é conectar-se ao seu servidor usando FTP ou abrir o gerenciador de arquivos do seu host.

Depois disso, abra o arquivo comments.php e procure uma linha com a função comment_form(). Seu tema terá um argumento, uma função ou um modelo definido que será usado para carregar o formulário de comentários personalizado do tema. A linha comment_form será semelhante a esta:

<?php comment_form( custom_comment_form_function() ); ?>

Você precisará substituir essa linha pela seguinte:

<?php comment_form(); ?>

Depois de fazer isso, salve suas alterações.

Agora, se você visitar seu site, verá o formulário de comentários padrão do WordPress com a caixa de seleção de opção de privacidade de comentários.

The default WordPress comment form

Dica de bônus: melhore a conformidade com o GDPR com o MonsterInsights

Habilitar uma caixa de seleção de opção de privacidade de comentários é uma maneira de tornar seu site mais compatível com o GDPR. Se você coleta outros dados e deseja garantir que seu site esteja em conformidade com o GDPR, recomendamos a instalação do MonsterInsights.

O MonsterInsights é um plug-in que facilita a conexão do seu site com o Google Analytics. Além disso, ele tem um complemento de conformidade com a UE para que seu rastreamento esteja em conformidade com o GDPR.

Com isso, o MonsterInsights aguardará o consentimento do usuário para rastrear suas atividades, em vez de fazer isso quando ele chegar ao seu site.

MonsterInsights EU compliance addon

Para obter mais informações sobre o MonsterInsights, leia nossa análise do MonsterInsights e nossa lista dos melhores plug-ins de GDPR para WordPress.

Esperamos que este artigo tenha ajudado você a aprender como adicionar a caixa de seleção de privacidade de comentários do GDPR no WordPress. Consulte também nosso guia sobre como permitir o registro de usuários no seu site WordPress e nossas escolhas de especialistas para os melhores plug-ins de formulário de contato.

Se você gostou deste artigo, inscreva-se em nosso canal do YouTube para receber tutoriais em vídeo sobre o WordPress. Você também pode nos encontrar no Twitter e no Facebook.

Divulgação: Nosso conteúdo é apoiado pelo leitor. Isso significa que, se você clicar em alguns de nossos links, poderemos receber uma comissão. Veja como o WPBeginner é financiado, por que isso é importante e como você pode nos apoiar. Aqui está nosso processo editorial.

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

O kit de ferramentas definitivo WordPress

Obtenha acesso GRATUITO ao nosso kit de ferramentas - uma coleção de produtos e recursos relacionados ao WordPress que todo profissional deve ter!

Reader Interactions

34 ComentáriosDeixe uma resposta

  1. Syed Balkhi says

    Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. Kris says

    What I just don’t understand or maybe I am missing something, is how to put the Privacy Policy checkbox as in what you have on your comments. Something like, “by using this form you agree to us collecting and storing data as per our privacy policy. Nobody seems to have this information – just the usual comment checkbox which is straight forward to do.

    • WPBeginner Support says

      If I understand what you’re looking to do, you can change the text by editing the text on line 29 in our code above that currently has ‘Save my name, email, and website in this browser for the next time I comment.’ when replacing, ensure you keep the single quotes.

      Administrador

  3. mike carpenter says

    Got this working and checked that the cookie was being created as expected, but when I browse away from the blog page and then return to it, I expected the form values to be pre-populated with the values stored in the cookie, but this doesn’t happen and the fields are left blank! I think I assumed that the line $commenter = wp_get_current_commenter(); and subsequent lines esc_attr( $commenter[‘comment_author_url’] ) etc. would retrieve the stored field values from the cookie. Have I missed something, or am I msundersatding the way the checkbox is supposed to work?

  4. Tara says

    I normally find great info on your site, but I have to speak up and say in this case, this is not accurate to be ready for GDPR, you need get consent to save their data for the comment/email/name/ip etc in your website database, whether or not they choose to save their details in a cookie for faster commenting at a later time.

    I used css to hide this checkmark and installed a GDPR plugin, unfortunately now that plugin is not prompting people that they have to checkmark to leave their comment, so now we are losing comments. What’s also frustrating is that it appears for all users with no option to show only for EU. Another frustration is that with hiding the wordpress added checkmark, now the users do not see “your comment is awaiting moderation”.

  5. Mirko says

    What if I don’t want the commenters to store a cookie with their personal data at all? Is there a way to deactivate the whole process and to hide this cookie consent for good?

  6. Peter says

    Thx for the guide,

    but everything described doesn’t seem to be possible, if it’s a wordpress.com page (free/no plan).

    There is no updating and there is nothing in the settings to add an opt-in check box or any other specific code. The only thing in the settings, that implies a possibility to achieve GDPR-compliance is to add a short info, that data will be provided to and stored at automaticc with a link to their privacy disclaimer. Furthermore, plug-ins and access via ftp can not be used.

    Any suggestions on how to include an opt-in check box for users who only use the free wordpress.com solution?
    Or is it not even needed due to the fact that user access to the web space is only possible via the rather limited wordpress configuration page – or due to any other means?

  7. Bryan says

    Hello, I was able to add this in my theme and it works, but there is one problem. I check consent box. Next time, my name and email are filled in, but I have to check consent box again. In default WP theme, if I check remember name, email fields box once, next time it comes checked by default. Is there problem with my theme or this code can be improved?

  8. Jim says

    Hey there! Great instruction! I am trying to get some sites GDPR compliant as well.

    I was wondering about Genesis websites, I couldn’t find this code in either comments.php OR functions.php so I first tried loading the code from Method 1 in via Simple Hooks after the comment form then I used the code you gave to Mateja in my functions.php. Both gave me a checkbox but… is it supposed to do anything else? Is there somewhere that I can see whether a commenter has checked this box? Thanks in advance for any help.

    Jim

  9. Elisa says

    Unfortunately I cannot apply any of the mentioned solutions as none of the CSS can be found. Contacted the comoany I got my theme from, hope they can help.

  10. Alexander says

    Hi,
    I was not helped by Method 1 and Method 2.
      I could not find the code I needed to edit.

    I’m using the “publisher” (themeforest) template.

    Can you tell me how to configure the “publisher” template?
    Thank you

    • WPBeginner Support says

      Hi Alexander,

      Unfortunately, it is not possible for us to come up with a solution for each theme as they use different methods. It would be best to contact your theme developer for support.

      Administrador

  11. Samantha says

    I also got the “Undefined variable: consent” message when I tried to do this, although the checkbox appeared along with the message.

  12. Mateja says

    Hi, I disabled the Jetpack comment form and now I can see the checkbox. All good. BUT, I don’t like how the text looks like….save my name, address and so on…..I would like to insert my own text with a link to the privacy policy,,,,,….is that possible? and how I do that? Thank you

    • WPBeginner Support says

      Hi Mateja,

      You can try this code in your theme’s functions.php file. You’ll be able to change the label text for the consent checkbox.

      function wpb_comments_privacy($arg) {
         
        $arg['cookies'] = '<p class="comment-form-cookies-consent"><input id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes"' . $consent . ' />' .
                                                   '<label for="wp-comment-cookies-consent">' . __( 'Save my name, email, and website in this browser for the next time I comment.' ) . '</label></p>';
           
        return $arg;
      }
       
      add_filter('comment_form_default_fields', 'wpb_comments_privacy');
      

      Administrador

  13. Kamran Khan says

    Thank you sir. I have applied the 1st method. Its working but after inserting the code some of the code elements also shown with the checkbox and message which I manually removed. Is it OK? Now its working fine but the checkbox is showing above the message and not inline. How I can inline both the checkbox and the message.

    • WPBeginner Support says

      Hi Kamran,

      No, there is probably something missing in the code. Most likely a quote or a php start or end tag. Carefully review the code to make sure that all quotes are closed and code is properly formatted.

      For styling you will need to use custom CSS to adjust the field.

      Administrador

  14. Carey says

    Ok, I am ignorant about adding code. I am using the K2 theme, which does not seem to have the updated comments form. I installed Code Snippets, but I don’t understand – does it just know where to put the snippet? I looked at the comments code in the theme files, but it doesn’t look anything like your example here. In fact it has 189 lines of code for comments. Do I just add your “new privacy checkbox optin” code to snippets and click activate and it inserts it in the correct place? So confused…

  15. Brian Sanderson says

    Hi! I do not have the above code in your article, as is, but i do have the following code in the comments.php file. The code includes the 4 fields;

    Could you please advise how my code could be edited? Thanks in advance.

    • WPBeginner Support says

      Hi Brian,

      It depends on rest of the code in your theme. Unfortunately, we cannot cover all the possible ways in which a theme may display a comment form. You will need to reach out to your theme author for support.

      Administrador

  16. Thomas says

    I tried using this and got the following notice in place of the checkbox:

    Undefined variable: consent

    So you didn’t define it? How do I do that?

    • Mark Corder says

      Huh… It’s working for me. I just need to get the checkbox and label lined-up to match the rest of my form…

    • Thomas says

      Just so everyone knows I opened up comments-template.php file from the wp-includes folder and found this:

      $consent = empty( $commenter[‘comment_author_email’] ) ? ” : ‘ checked=”checked”‘;

      Adding this to the above defines the consent and in doing so will remove the notice if you have debug turned on.

      You have to add it before the $comments_args = array. This all depends on how you have your template configured.

      Hope it helps.

Deixe uma resposta

Obrigado por deixar um comentário. Lembre-se de que todos os comentários são moderados de acordo com nossos política de comentários, e seu endereço de e-mail NÃO será publicado. NÃO use palavras-chave no campo do nome. Vamos ter uma conversa pessoal e significativa.