Una vez nos enfrentamos a un problema frustrante donde los inicios de sesión de usuarios y los carritos de compras en uno de nuestros sitios fallaban constantemente. El problema era algo que habíamos pasado por alto: cómo nuestro sitio estaba gestionando las cookies.
Lidiar con configuraciones técnicas como las cookies puede parecer intimidante, pero configurarlas correctamente es clave para una experiencia de usuario fluida. Después de resolver nuestros propios problemas con las cookies, desarrollamos un sistema sencillo que cualquiera puede seguir.
En esta guía, compartiremos los pasos exactos que usamos para establecer, obtener y eliminar cookies en WordPress. Desglosaremos el proceso para que puedas gestionar las cookies de tu sitio con confianza.

Nota: Este es un tutorial avanzado. Requiere que tengas un conocimiento profundo de HTML, CSS, sitios de WordPress y PHP.
¿Qué son las cookies?
Las cookies son archivos de texto plano que se crean y almacenan en los navegadores de los usuarios cuando visitan un sitio web. Puedes usar cookies para agregar diferentes funciones a tu sitio web de WordPress.
Estos son algunos casos de uso comunes para las cookies:
- Almacenar y gestionar la información de inicio de sesión de un usuario
- Almacenar información temporal de sesión durante la visita de un usuario
- Recordar los artículos del carrito durante la visita de un usuario a una tienda de comercio electrónico
- Rastrear la actividad del usuario en un sitio para ofrecer una experiencia de usuario personalizada
Si bien las cookies son herramientas poderosas para los propietarios de sitios web, pueden generar preocupaciones sobre la privacidad. Las prácticas de marketing modernas, incluido el marketing por correo electrónico, el growth hacking y la publicidad digital, a menudo utilizan cookies como balizas de seguimiento para recopilar y compartir la actividad del usuario en varios sitios web.
Es por eso que la Unión Europea promulgó la Ley de Cookies de la UE, que exige a los propietarios de sitios web declarar que utilizan cookies para almacenar información. Si bien muchos sitios simplemente muestran un aviso básico, el verdadero cumplimiento del GDPR requiere la gestión activa del consentimiento de cookies y los scripts de seguimiento.
WPConsent facilita la adición de un sistema de consentimiento de cookies totalmente compatible a tu sitio de WordPress. Este plugin va más allá de las notificaciones básicas al bloquear activamente los scripts de seguimiento hasta que los visitantes den su permiso.

Crear un banner de consentimiento de cookies con WPConsent es sencillo. Puede elegir una plantilla prediseñada, personalizar el diseño para que coincida con su sitio y dejar que el plugin gestione automáticamente todo el consentimiento del visitante por usted.
Puede aprender cómo hacer esto en su propio sitio en nuestra guía sobre cómo agregar un popup de cookies para GDPR/CCPA.
Cómo se utilizan las cookies en un sitio web típico de WordPress
Por defecto, WordPress utiliza cookies para gestionar las sesiones de los usuarios registrados y la autenticación, y para recordar el nombre y la dirección de correo electrónico de un usuario si este completa un formulario de comentarios.
Sin embargo, muchos plugins de WordPress en tu sitio web también pueden establecer sus propias cookies.
Por ejemplo, OptinMonster te permite mostrar diferentes formularios de suscripción por correo electrónico a visitantes nuevos y recurrentes, y lo hace utilizando cookies.
Si estás utilizando servicios web externos en tu sitio web, como Google Analytics o Google AdSense, entonces también pueden establecer cookies de terceros en tu sitio web.
Puedes ver todas las cookies del sitio web en la configuración de tu navegador. Por ejemplo, en Google Chrome, necesitas empezar abriendo la página de Configuración.
Puedes hacer esto haciendo clic en el ícono de ‘3 puntos’ en la parte superior derecha y seleccionando ‘Configuración’ o escribiendo chrome://settings en la barra de direcciones.

En la página de Configuración, haz clic en 'Privacidad y seguridad' en el menú de la izquierda.
A continuación, en 'Privacidad y seguridad', busca y haz clic en 'Cookies de terceros'.

Esto abrirá la página de configuración de cookies.
A continuación, debes hacer clic en la opción ‘Ver todos los datos y permisos del sitio’.

En la siguiente página, verás una lista de todas las cookies y datos del sitio almacenados en tu navegador por todos los sitios web que has visitado.
Puedes escribir la dirección de un sitio web en el cuadro de búsqueda y se te mostrarán los datos almacenados por ese sitio web.

Al hacer clic en un solo elemento, se te mostrarán más detalles sobre las cookies individuales y su contenido.
Cómo establecer una cookie en WordPress
Para seguir este tutorial, necesitarás agregar código al archivo functions.php de tu tema o usar un plugin de fragmentos de código como WPCode. Si no has hecho esto antes, consulta nuestra guía sobre cómo copiar y pegar fragmentos de código en WordPress.
Primero, usaremos la función setcookie() en PHP. Esta función acepta los siguientes parámetros:
- Nombre de la cookie
- Valor de la cookie
- Expiración – opcional y establece un período de tiempo después del cual la cookie expira
- Ruta – opcional y usará la raíz del sitio por defecto
- Dominio – opcional y usa el dominio de tu sitio web por defecto
- Seguro – opcional, y solo transfiere datos de cookies a través de HTTPS si es verdadero
- httponly – opcional, y cuando se establece en true, la cookie solo es accesible a través de HTTP y no puede ser utilizada por scripts
Ahora, agreguemos un fragmento de código a tu sitio de WordPress. Este código almacena la marca de tiempo exacta cuando un usuario visitó tu sitio web en una cookie:
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);
}
}
Ahora puedes visitar tu sitio web y luego revisar las cookies de tu navegador. Encontrarás una cookie con el nombre wpb_visit_time.
Cómo obtener una cookie y usarla en WordPress
Ahora que hemos creado esta cookie que se almacena en el navegador del usuario durante un año, veamos cómo podemos usar esta información en nuestro sitio web.
Si conoces el nombre de una cookie, puedes llamarla fácilmente en cualquier lugar de PHP usando la variable $_COOKIE[]. Agreguemos algo de código que no solo establezca la cookie, sino que también la use para hacer algo en tu sitio web:
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');
Hemos comentado dentro del código para mostrarte qué hace cada parte. Este código utiliza la información almacenada en la cookie y la muestra usando shortcode.
Ahora puedes agregar el shortcode [greet_me] en cualquier lugar de tu sitio web, y mostrará cuándo fue la última visita de un usuario.
Siéntete libre de modificar el código para hacerlo más útil para tu sitio web. Por ejemplo, puedes mostrar publicaciones recientes a los usuarios recurrentes y publicaciones populares a los usuarios nuevos.
Eliminar una cookie en WordPress
Hasta ahora, hemos aprendido cómo establecer una cookie y usarla más tarde en tu sitio web. Ahora, veamos cómo eliminar cookies.
Para eliminar una cookie, necesitas agregar la siguiente línea a tu código:
unset($_COOKIE['wpb_visit_time']);
No olvides reemplazar wpb_visit_time con el nombre de la cookie que intentas eliminar.
Pongamos este código en contexto usando el mismo código de ejemplo que usamos anteriormente. Esta vez, eliminaremos una cookie y la volveremos a establecer con nueva información:
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 puedes ver, este código elimina la cookie una vez que hemos utilizado la información almacenada en ella. Más tarde, volvemos a establecer la cookie con la información de tiempo actualizada.
Preguntas Frecuentes Sobre las Cookies de WordPress
Aquí están las respuestas a algunas de las preguntas más comunes sobre cómo establecer, obtener y eliminar cookies en WordPress.
1. ¿Qué son las cookies de un sitio web?
Las cookies de un sitio web son pequeños archivos de texto que se almacenan en el navegador web de un visitante. Se utilizan para guardar y recuperar información para un sitio web específico, como recordar el estado de inicio de sesión de un usuario, mantener artículos en un carrito de compras o personalizar su experiencia.
2. ¿Son las cookies de WordPress perjudiciales para mi sitio?
No, las cookies no son intrínsecamente malas. Son esenciales para muchas funciones principales de WordPress, como la gestión de inicios de sesión de usuarios y el recuerdo de información de comentarios. Sin embargo, dado que pueden rastrear la actividad del usuario, plantean preocupaciones de privacidad, por lo que existen regulaciones como GDPR.
3. ¿Necesito mostrar un aviso de consentimiento de cookies en WordPress?
Si tu sitio web tiene visitantes de países con leyes de privacidad como el GDPR de la Unión Europea, entonces estás obligado a obtener el consentimiento del usuario antes de almacenar la mayoría de los tipos de cookies. Usar un plugin como WPConsent es una forma fácil de asegurar el cumplimiento.
4. ¿Cómo puedo ver qué cookies está utilizando mi sitio web?
Puedes ver todas las cookies que utiliza un sitio web directamente en las herramientas de desarrollador o en la configuración de tu navegador. Por ejemplo, en Google Chrome, puedes ir a Configuración » Privacidad y seguridad » Cookies de terceros y luego hacer clic en 'Ver todos los datos y permisos del sitio' para inspeccionar las cookies de cualquier sitio que hayas visitado.
Recursos adicionales sobre el uso de cookies con WordPress
Esperamos que este artículo te haya ayudado a aprender cómo establecer, obtener y eliminar fácilmente cookies en WordPress. También es posible que desees ver otras guías relacionadas con el uso de cookies en WordPress:
- Glosario: Cookies
- Cómo usar el retargeting de cookies en WordPress para mostrar mensajes personalizados en el sitio
- Cómo saber si tu sitio web de WordPress utiliza cookies
- Cómo agregar un aviso de cookies en WordPress para GDPR/CCPA
- Los mejores plugins de WordPress para GDPR para mejorar el cumplimiento
- Cómo borrar la caché de tu navegador en todos los navegadores principales (forma rápida)
- Cómo administrar y eliminar transitorios en WordPress (La forma fácil)
Si te gustó este artículo, suscríbete a nuestro canal de YouTube para obtener tutoriales en video de WordPress. También puedes encontrarnos en Twitter y Facebook.

Alex
Hola, no entendí si debía poner el archivo en la carpeta del tema en el archivo functions.php y guardarlo
Comentarios de WPBeginner
Sí, el código que se muestra en esta guía podría ir en el archivo functions.php del tema, que se encuentra en la carpeta del tema.
Dicho esto, recomendamos usar el método de esta guía en su lugar, ya que es un poco más seguro: https://www.wpbeginner.com/beginners-guide/beginners-guide-to-pasting-snippets-from-the-web-into-wordpress/
Alan Brady
Un artículo muy útil e informativo, gracias.
Descubrí que simplemente usar unset no parecía eliminar la cookie, tuve que establecer la fecha de caducidad de la cookie en algún momento del pasado, por ejemplo:
setcookie(‘wpb_visit_time’, $visit_time, time()-1);
Soporte de WPBeginner
Gracias por compartir eso para aquellos que puedan encontrarse con ese problema también.
Administrador
Debbie Kurth
El problema es que, cuando implemento código como este, obtengo un error de advertencia y la cookie falla, cuando estoy en WordPress.
Advertencia: No se puede modificar la información de encabezado – ya se enviaron encabezados (salida iniciada
¿Cómo evitas eso?
Soporte de WPBeginner
Hay algunas razones posibles para ese error específico, te recomendamos que eches un vistazo a nuestro artículo a continuación que profundiza un poco más en el error y cómo resolverlo:
https://www.wpbeginner.com/wp-tutorials/how-to-fix-pluggable-php-file-errors-in-wordpress/
Administrador
Pete
¿Cómo puedo usar una cookie para restringir que los usuarios visiten una página solo una vez?
Nigel
¡Gracias por el excelente tutorial!
Un pequeño error: En el primer fragmento de código, $wpb_visit_time debería ser 'wpb_visit_time'
Soporte de WPBeginner
Thanks for catching that, we’ll be sure to update the code
Administrador
Matt
Hola, parece que tienes un error en tu código para el primer ejemplo:
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); } }
Especificas la variable como $visit_time pero en la función setcookie llamas a $current_time.
Gracias por la(s) guía(s), aunque son súper útiles.
Soporte de WPBeginner
Thanks for pointing that out, we will be sure to update and fix that, glad our guides have been useful
Administrador
Anastasia
Tus artículos son realmente útiles, pero necesito entender muy bien los códigos, así que quiero saber, ¿Tengo que copiar y pegar todo el código que se muestra aquí? ¿Reemplazo wbp_visit_time, wbp_cookies_tutorial con el nombre de mi sitio?
Soporte de WPBeginner
Para entender cómo agregar el código, deberías echar un vistazo a nuestro artículo a continuación:
https://www.wpbeginner.com/beginners-guide/beginners-guide-to-pasting-snippets-from-the-web-into-wordpress/
No necesitas reemplazar los nombres con el nombre de tu sitio.
Administrador
Brian
No sé por qué cada vez que intento buscar mi sitio web en cualquier motor de búsqueda, aparece "sitio web no confiable" ¿Qué está mal? ¿Cómo puede mi sitio web ser confiable para todos los navegadores y motores de búsqueda?
Soporte de WPBeginner
Es posible que desees asegurarte de que tu sitio esté usando HTTPS y echar un vistazo a nuestra guía a continuación: https://www.wpbeginner.com/wp-tutorials/how-to-add-ssl-and-https-in-wordpress/
Administrador
Geeby
Disculpas por revivir este hilo, pero necesito ayuda. La primera página de mi sitio pide a los clientes que seleccionen su región. Los productos disponibles diferirán según dónde elijan. No quiero que tengan que volver a seleccionar esta ubicación cada vez que visiten la página de inicio. ¿Algún consejo?
Soporte de WPBeginner
Deberías consultar con el soporte de tu plugin de comercio electrónico para ver si tienen un método para configurar eso para tus usuarios.
Administrador
Les
Gran artículo. Dijiste que pusiera el código en el archivo functions.php. Estoy usando WP Elementor, solo necesito que los valores de las cookies se muestren cuando un usuario va a una página específica. ¿Se puede agregar este código en una página específica? Quiero crear la cookie con ciertos valores que provienen de un formulario, la primera vez que el usuario completa el formulario. Después de eso, la próxima vez que regrese a esta página, el formulario debería autocompletarse con los datos de la cookie, esto reduce los campos que necesitan completar en una visita de regreso.
Soporte de WPBeginner
Para eso, deberías contactar al plugin de formularios que estás usando para ver si ya tienen un sistema configurado para eso.
Administrador
Anthony Coffey
Puedes agregar el código a functions.php y usar la función de WordPress “is_page()” para agregar lógica condicional a tu fragmento de código de cookie.
La función is_page() acepta el ID de la página, el slug o el nombre/título. Es bastante fácil de usar, puedes leer más sobre la función is_page() en línea en el codex de WordPress.