He desarrollado un pequeño script para poder cumplir la ley de cookies, que es apto para todos los servicios. Toda la información y demás está en Github, haré un artículo más grande para que cualquiera pueda usarlo ya use blogger, wordpress o cualquier otro CMS.
Raciona automáticamente las cookies de Analytics y Adsense, pero es sencillo añadir otros servicios de terceros sin tocar el código, posee una API de eventos para poder añadir esos scripts asíncronamente.
Características
- Carga automática de Google Analytics y Google Adsense si son usados
- API de eventos para facilitar la carga de cualquier script que cargue cookies
- Sección de opciones
Instalación
Paso 1: Añadir el script
Lo primero será añadir el script y los estilos necesarios. Los estilos son algo muy básico símplemente para asegurar que el mensaje sea visible y podéis modificarlos a vuestro gusto. Los links que veréis aquí están hosteados en github, pero lo ideal sería que cada uno guardase una copia y lo hosteara.
Encima de </head>
:
<link rel="stylesheet" type="text/css" href="https://raw.github.com/ecoal95/CookieTool/master/cookietool.css" />
Encima de </body>
(éste es el interesante).
<script src="https://raw.github.com/ecoal95/CookieTool/master/cookietool.js"></script>
<!-- Configuración (ver más abajo) -->
<!-- Otros códigos de configuración (ver más abajo) -->
<script>CookieTool.API.ask();</script>
Uso Blogger
En este caso tendrás que sustituir las comillas dobles por simples.
Uso WordPress
Tendrás que tocar los archivos header.php
y footer.php
de tu tema. Es posible que haga un plugin, pero por ahora es lo que hay.
Si tienes las estadísticas de JetPack activadas tendrás que desactivarlas, ya que esa cookie la manda el servidor y no se puede hacer nada para evitarlo.
Paso 2: Configurar el script
El script admite algunas opciones para mostrar el mensaje y demás. Justo en el comentario de Configuración es donde debemos ponerlo.
Este es un ejemplo con las opciones más básicas:
<script>
CookieTool.Config.set('link','/politicadecookies.html'); // Link a la política de cookies
CookieTool.Config.set('message', 'Este es el mensaje que se mostrará, <a href="{{link}}">política de cookies</a>');
CookieTool.Config.set('agreetext','Sí, acepto'); // Mensaje del botón de aceptar
CookieTool.Config.set('declinetext','No, me niego'); // Mensaje del botón de No aceptar
CookieTool.Config.set('position', 'top'); // top o bottom, la posición del mensaje usando los estilos por defecto.
// También podríamos hacer:
CookieTool.Config.set({
'link': '/loquesea',
'message': 'Cualquier cosa'
// ...
})
</script>
Paso 3: Modificar el código que inserte cookies
Aquí viene cómo modificar los códigos de Analytics y Google Adsense, que son los códigos más frecuentes y los que trata el script por defecto.
Google Adsense
Tendréis que usar el código asíncrono de Google Adsense con una pequeña modificación (aquí viene explicado).
Google Analytics
Tendréis que dejarlo tal y como está, pero sin cargar el script:
Código antiguo (_gaq
)
Con dejarlo así vale
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXX-Y']);
_gaq.push(['_trackPageview']);
</script>
Código nuevo (isogram
)
En este caso el código que carga el script es un poco más difícil de quitar. Sólo hay que quitar el fragmento que va desde 1*new Date()
al fin de la función (})(window...)
).
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-27809661-2', 'emiliocobos.net');
ga('send', 'pageview');
</script>
Otros scripts
Para usar otros scripts tendréis que alterar el código de tal manera que no inserte cookies de primeras, luego podéis usar el script tal que así (en otros códigos de configuración):
<script>
CookieTool.Event.on('agree', function() {
// Código que carga las cookies
// Por elemplo:
// CookieTool.Utils.loadScript('http://abc.com/script-que-carga-cookies.js');
});
CookieTool.Event.on('decline', function() {
// Borrar las cookies si es posible:
// CookieTool.Cookie.remove('cookieinsertadaporeseprograma');
});
</script>
Paso 3: Crear o modificar la página de Política de cookies
Como habéis visto, hay una opción llamada link que lleva a una página (exigida por la ley) llamada política de cookies.
En esa página debéis de explicar qué es una cookie, qué cookies no requeridas instaláis y su finalidad.
Como la herramienta genera una cookie requerida no hará falta añadirla, pero tendréis que añadir una sección llamada Configuración de cookies, donde tenéis que poner el siguiente código html:
<div id="cookietool-settings"></div>
Allí se mostrará una pequeña configuración como en la demo.
Ya!
Pues eso, que ya tendrías tu página acorde a esa salvajada llamada ley de cookies del estado español.
Modificaciones, etc…
Es código libre, así que podéis tocar y cambiar lo que queráis. Cualquier mejora os rogaría que la mandarais a github
Tú lo has hecho, por qué no lo usas?
Sí lo uso, pero lo uso de un modo «especial»: Yo asumo que vosotros dais el consentimiento, ya que la falta de consentimiento no está tipificada como delito (ver aquí), así que no puede ser sancionada, sin embargo, sí informo y doy opciones para revocar el permiso en mi página de política de cookies.
Si os interesa usarlo así, sólo hace falta cambiar el CookieTool.API.ask()
por CookieTool.API.impliedAgreement()