<script>
// Espera a que todo el contenido del DOM (la página) esté cargado.
document.addEventListener("DOMContentLoaded", function() {
/**
* ---------------------------------------------------
* CONFIGURACIÓN
* Cambia esta URL por la de tu página intermedia.
* El "?url=" al final es importante para pasar el destino.
* ---------------------------------------------------
*/
const paginaIntermedia = "https://tu-sitio-web.com/redirect?url=";
// Obtenemos todos los elementos <a> (enlaces) de la página.
const todosLosEnlaces = document.querySelectorAll('a');
// Obtenemos el nombre de host de tu propio sitio para saber qué es un enlace interno.
const hostInterno = window.location.hostname;
// Recorremos cada uno de los enlaces encontrados.
todosLosEnlaces.forEach(function(enlace) {
// Verificamos si el enlace tiene un atributo 'href' para evitar errores.
if (enlace.href) {
const hostDelEnlace = new URL(enlace.href).hostname;
// La condición para ser un enlace saliente es:
// 1. Tiene un host (no es un enlace como mailto: o tel:).
// 2. El host es diferente al de nuestro propio sitio web.
if (hostDelEnlace && hostDelEnlace !== hostInterno) {
// Si es un enlace saliente, le añadimos un "escuchador" de clics.
enlace.addEventListener('click', function(event) {
// 1. Prevenimos la acción por defecto (que es ir directamente al enlace).
event.preventDefault();
// 2. Codificamos la URL original para que sea segura de pasar como parámetro.
const urlDestinoOriginal = encodeURIComponent(this.href);
// 3. Redirigimos al usuario a nuestra página intermedia, añadiendo el destino original.
window.location.href = paginaIntermedia + urlDestinoOriginal;
});
}
}
});
});
</script>