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 definir, obter e excluir cookies do WordPress (como um profissional)

Cookies são pequenos arquivos que os sites usam para lembrar informações sobre os visitantes. Usamos cookies em nossos próprios sites para torná-los mais fáceis de usar e personalizados.

Muitos proprietários de sites desejam usar cookies, mas não sabem ao certo como começar. Os cookies podem ajudá-lo a lembrar as preferências do usuário, manter as pessoas conectadas e até mesmo exibir conteúdo direcionado.

Neste guia definitivo, mostraremos a você como definir, obter e excluir cookies do WordPress como um profissional.

How to set, get, and delete cookies in WordPress

Observação: Este é um tutorial avançado. Ele exige que você tenha um conhecimento proficiente de HTML, CSS, sites WordPress e PHP.

O que são cookies?

Cookies são arquivos de texto simples que são criados e armazenados nos navegadores dos usuários quando eles visitam um site. Você pode usar cookies para adicionar diferentes recursos ao seu site WordPress.

Aqui estão alguns casos de uso comuns de cookies:

  • Armazenar e gerenciar as informações de login de um usuário
  • Armazenamento de informações temporárias da sessão durante a visita de um usuário
  • Lembrar itens do carrinho durante a visita de um usuário a uma loja de comércio eletrônico
  • Rastreamento da atividade do usuário em um site para oferecer uma experiência de usuário personalizada

Como você pode ver, os cookies são uma ferramenta muito útil para os proprietários de sites, mas também podem ser um pouco invasivos. As tendências recentes de marketing por e-mail, growth hacking e marketing on-line como um todo permitem que os sites definam cookies que funcionam como um sinalizador e podem ser usados para salvar e até mesmo compartilhar a atividade do usuário entre sites.

É por isso que a União Europeia promulgou a Lei de Cookies da UE, que exige que os proprietários de sites declarem que usam cookies para armazenar informações.

Você pode aprender como fazer isso em seu próprio site em nosso guia sobre como adicionar um pop-up de cookies para GDPR/CCPA.

Como os cookies são usados em um site WordPress típico

Por padrão, o WordPress usa cookies para gerenciar sessões de usuários conectados e autenticação e para lembrar o nome e o endereço de e-mail de um usuário se ele preencher um formulário de comentário.

No entanto, muitos plug-ins do WordPress em seu site também podem definir seus próprios cookies.

Por exemplo, o OptinMonster permite que você mostre formulários de opt-in de e-mail diferentes para visitantes novos e visitantes que retornam, e faz isso usando cookies.

Se você estiver usando serviços externos da Web em seu site, como o Google Analytics ou o Google AdSense, eles também poderão definir cookies de terceiros em seu site.

Você pode visualizar todos os cookies do site nas configurações do seu navegador. Por exemplo, no Google Chrome, você precisa começar abrindo a página Configurações.

Para isso, clique no ícone de “três pontos” no canto superior direito e selecione “Configurações” ou digite chrome://settings na barra de endereços.

Content settings in Google Chrome

Na página Configurações, você precisa procurar por “Configurações de conteúdo”.

Em “Content settings” (Configurações de conteúdo), você precisará clicar em “Cookies”.

Cookies section in Chrome settings

Isso abrirá a página de configurações de cookies.

Em seguida, você precisa clicar na opção “Ver todos os cookies e dados do site”.

View all cookies and site data

Na próxima página, você verá uma lista de todos os cookies e dados do site armazenados no navegador por todos os sites que você visitou.

Você pode digitar o endereço de um site na caixa de pesquisa e serão exibidos os dados armazenados por esse site.

View site cookies

Ao clicar em um único item, você verá mais detalhes sobre cookies individuais e seus conteúdos.

Como definir um cookie no WordPress

Para seguir este tutorial, você precisará adicionar código ao arquivo functions.php do seu tema ou usar um plug-in de snippet de código, como o WPCode. Se nunca tiver feito isso antes, dê uma olhada em nosso guia sobre como copiar e colar trechos de código no WordPress.

Primeiro, usaremos a função setcookie() no PHP. Essa função aceita os seguintes parâmetros:

  • Nome do cookie
  • Valor do cookie
  • Expire (Expirar) – opcional e define um período de tempo após o qual o cookie expira
  • Caminho – opcional e usará a raiz do site por padrão
  • Domain (Domínio) – opcional e usa o domínio de seu site por padrão
  • Secure (Seguro) – opcional, e só transfere dados de cookies via HTTPS se for verdadeiro
  • httponly – opcional e, quando definido como true, o cookie só pode ser acessado via HTTP e não pode ser usado por scripts

Agora, vamos adicionar um trecho de código ao seu site WordPress. Esse código armazena em um cookie o carimbo de data e hora exato em que um usuário visitou seu site:

function wpb_cookies_tutorial1() { 

$visit_time = date('F j, Y  g:i a');

if(!isset($_COOKIE[wpb_visit_time])) {

// set a cookie for 1 year
setcookie('wpb_visit_time', $visit_time, time()+31556926);

}

} 

Agora você pode visitar seu site e verificar os cookies do navegador. Você encontrará um cookie com o nome wpb_visit_time.

Como obter um cookie e usá-lo no WordPress

Agora que criamos esse cookie que é armazenado no navegador do usuário por um ano, vamos ver como podemos usar essas informações em nosso site.

Se você souber o nome de um cookie, poderá chamá-lo facilmente em qualquer lugar do PHP usando a variável $_COOKIE[]. Vamos adicionar um código que não apenas define o cookie, mas também o utiliza para fazer algo em seu site:

function wpb_cookies_tutorial2() {
// Time of user's visit
$visit_time = date('F j, Y g:i a');

// Check if cookie is already set
if(isset($_COOKIE['wpb_visit_time'])) {

// Do this if cookie is set
function visitor_greeting() {

// Use information stored in the cookie
$lastvisit = $_COOKIE['wpb_visit_time'];

$string .= 'You last visited our website '. $lastvisit .'. Check out whats new'; 

return $string;
}	

} else { 

// Do this if the cookie doesn't exist
function visitor_greeting() {
$string .= 'New here? Check out these resources...' ;
return $string;
}	

// Set the cookie
setcookie('wpb_visit_time',  $visit_time, time()+31556926);
}

// Add a shortcode
add_shortcode('greet_me', 'visitor_greeting');

}
add_action('init', 'wpb_cookies_tutorial2');

Comentamos o código para mostrar a você o que cada parte faz. Esse código usa as informações armazenadas no cookie e as envia usando o shortcode.

Agora você pode adicionar o shortcode [greet_me] em qualquer lugar do seu site, e ele mostrará quando um usuário visitou o site pela última vez.

Sinta-se à vontade para modificar o código para torná-lo mais útil para seu site. Por exemplo, você pode mostrar as postagens recentes para os usuários que retornam e as postagens populares para os novos usuários.

Exclusão de um cookie no WordPress

Até agora, aprendemos como definir um cookie e usá-lo posteriormente em seu site. Agora, vamos dar uma olhada em como excluir cookies.

Para excluir um cookie, você precisa adicionar a seguinte linha ao seu código:

unset($_COOKIE['wpb_visit_time']);

Não se esqueça de substituir wpb_visit_time pelo nome do cookie que está tentando excluir.

Vamos colocar esse código em algum contexto usando o mesmo código de exemplo que usamos acima. Desta vez, excluiremos um cookie e o definiremos novamente com novas informações:

function wpb_cookies_tutorial2() {
// Time of user's visit
$visit_time = date('F j, Y g:i a');

// Check if cookie is already set
if(isset($_COOKIE['wpb_visit_time'])) {

// Do this if cookie is set
function visitor_greeting() {

// Use information stored in the cookie
$lastvisit = $_COOKIE['wpb_visit_time'];

$string .= 'You last visited our website '. $lastvisit .'. Check out whats new'; 

// Delete the old cookie so that we can set it again with updated time
unset($_COOKIE['wpb_visit_time']); 

return $string;
}	

} else {
// Do this if the cookie doesn't exist
function visitor_greeting() {
$string .= 'New here? Check out these resources...' ;
return $string;
}
}
add_shortcode('greet_me', 'visitor_greeting');

// Set or Reset the cookie
setcookie('wpb_visit_time',  $visit_time, time()+31556926);
}
add_action('init', 'wpb_cookies_tutorial2');

Como você pode ver, esse código exclui o cookie depois que usamos as informações armazenadas nele. Posteriormente, definimos o cookie novamente com as informações de horário atualizadas.

Guias especializados sobre o uso de cookies no WordPress

Esperamos que este artigo tenha ajudado você a aprender como definir, obter e excluir facilmente os cookies do WordPress. Talvez você também queira ver alguns outros guias relacionados ao uso de cookies no WordPress:

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

18 ComentáriosDeixe uma resposta

  1. Alan Brady

    A very useful and informative article, thank you.
    I found that just using unset didn’t seem to delete the cookie, I had to set the cookie expiry time to sometime in the past, e.g.:
    setcookie(‘wpb_visit_time’, $visit_time, time()-1);

    • WPBeginner Support

      Thank you for sharing that for those who may run into that issue as well.

      Administrador

  2. Debbie Kurth

    Problem is, when I implement code like this, I get an warning error and the cookie fails, when in wordpress.

    Warning: Cannot modify header information – headers already sent by (output started

    How do you go around that?

  3. Pete

    How can I use a cookie to restrict users visit a page just once.

  4. Nigel

    Thanks for the awesome tutorial!

    A small mistake: In the first code snippet $wpb_visit_time should be ‘wpb_visit_time’

    • WPBeginner Support

      Thanks for catching that, we’ll be sure to update the code :)

      Administrador

  5. Matt

    Hi there, you seem to have an error in your code for the first example:

    function wpb_cookies_tutorial1() {
    $visit_time = date(‘F j, Y g:i a’);
    if(!isset($_COOKIE[$wpb_visit_time])) {
    // set a cookie for 1 year
    setcookie(‘wpb_visit_time’, $current_time, time()+31556926);
    }
    }

    You specify the variable as $visit_time but in the setcookie function you call $current_time.

    Thank for the guide(s) though they are super useful.

    • WPBeginner Support

      Thanks for pointing that out, we will be sure to update and fix that, glad our guides have been useful :)

      Administrador

  6. Anastasia

    Your articles are really helpful but I need to understand the codings very well so I want to know,
    Do I have to copy and paste all the code displayed here?
    Do I replace wbp_visit_time, wbp_cookies_tutorial with the name of my site?

  7. Brian

    I don’t know why anytime I try to search my website using any search engines it writes website not trusted
    What’s wrong? How can My website be trusted by all browsers and search engines?

  8. Geeby

    Apologies for resurrecting this thread but i need some help.
    The first page of my site asks customers to select their region. The products available will differ depending on where they choose.
    I don’t want them to have to re-select this location every time they go to the homepage.
    Any advice?

    • WPBeginner Support

      You would want to check with the support for your eCommerce plugin for if they have a method to set that for your users.

      Administrador

  9. Les

    Great article. You said to put the code in the functions.php file. I am using WP Elementor, I only need the cookie values pulled up when a user goes to a certain page. Can this code be added on a specific page? I want to create the cookie with certain values that come from a form, the first time the user completes the form. After that, the next time they come back to this page, the form should auto populate from the cookie data., this reduces the fields they need to complete on a return visit.

    • WPBeginner Support

      For that, you would want to reach out to the form plugin you are using for if they have a system for that already set up.

      Administrador

    • Anthony Coffey

      You can add the code to functions.php and use the WordPress function “is_page()” to add conditional logic to your cookie code snippet.

      The is_page() function accepts either page ID, slug or name/title. It’s pretty easy to use, you can read more about the is_page() function online in the WordPress codex.

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.