Consejos, trucos y buenas prácticas

JuanGomez0818
Asesor destacado

Redirección vía IP de país.

Hola hace bastantes días venía intentando hacer que mi sitio web creado en Hubspot se redirijera al país correspondiente de manera automática y no por selección del usuario, ya que tenía información pertinente por cada uno de los países, además de ser también una petición especifica. 

 

Aquí el resumen del paso a paso.

1. Creamos variantes de idioma para cada país incluido en la web, es decir, ES - CO, ES-US, ES-MX, etc, por cada uno de estos países.

2. En la herramienta de Marketing > Archivos y plantillas > herramientas de diseño, cree un nuevo archivo .js

3. En este nuevo archivo cree las diferentes variables por países que tenía ya creados anteriormente, y sería esto: 

 

 

var defaultCountry = 'US';
var defaultSite    = 'www.example.com';
var costaRica      = 'CR';
var costaRicaWeb   = '/es-cr/';
var mexico         = 'MX';
var mexicoWeb      = '/es-mx/';
var brasil         = 'BR';
var brasilWeb      = '/pt-br/';
var chile          =  'CL';
var chileWeb       =  '/es-cl/';
var guatemala      =  'GT';
var guatemalaWeb   =  '/es-gt/';
var otherSite      = '/en-us/';


fetch('https://ipapi.co/country/')
  .then(response => {
    if (response.ok) {
      return response.text();
    } else {
      throw new Error('HTTP Error ' + response.status);
    }
  })

  .then(country => {
    if (country == defaultCountry) {
        console.log('Already on default site');
    }

   else if  (country == costaRica) {
        window.location= costaRicaWeb;
   }
  
   else if (country == mexico) {
        window.location= mexicoWeb;
    }
            
   else if (country == brasil) {
        window.location= brasilWeb;
    }
  
   else if (country == chile) {
        window.location= chilelWeb;
    }
  
  else if (country == guatemala) {
        window.location= guatemalaWeb;
    }
  
  })

  
  
  .catch(function(error) {
    /* Error scenarios
     - Network connectivity error
     - Script blocked by browser extension ( try to disable blockers etc. )
     - 429 error ( too many requests )
    */
    console.log(error);
  });

 

La API de IPAPI lo que hace es revisar la IP del país que entra a visitar y si la reconoce dentro del listado mostrará la web del país correspondiente o la web por defecto.

 

4. Despues de crear el archivo se debe copiar su url pública:

JuanGomez0818_0-1657140086518.png

 

5. Cuando tengamos copiada nuestra URL pública, la podremos envolver en una etiqueta <script> de esta manera:

 <!-- start Main.js Do Not Remove -->
 <script src='{{ get_asset_url('set_your_URL_javascript_before_copied') }}'></script>
 <!---End Main.js-->

 

6. Ahora deberás ir al home de tu página web y en configuración deberás ir hasta HTML del pie de página y copiar allí el script anteriormente creado. 

 

JuanGomez0818_1-1657140360179.png

 

Damos guardar y actualizar página, después de esto las visitas de los países que hayamos configurado se redirigiran autómaticamente al país correspondiente.

 

Espero que sea útil esto, saludos!

 

 




Juan Gómez
Hubspot Consultant | HubSpot Freelancer | Hubspot Solution Provider |

Contáctame aquí



2 Respuestas 2
DianaGomez
Administrador de la comunidad
Administrador de la comunidad

Redirección vía IP de país.

Hola @JuanGomez0818 espero que estés muy bien 😊

 

¡Muchísimas gracias por tu aporte, es increíble contar con personas como tú en la Comunidad!

 

Saludos, 

Diana


¿Sabías que la Comunidad está disponible en Español?
¡Participa hoy en conversaciones en el idioma de tu preferencia,cambiando el idioma en tus configuraciones!

Did you know that the Community is available in other languages?
Join regional conversations by changing your language settings !


0 Me gusta
JuanGomez0818
Asesor destacado

Redirección vía IP de país.

Es muy gratificante cuando encontramos algunas soluciones que pueden ser utiles para los demás.

Gracias por escribir. Saludos.




Juan Gómez
Hubspot Consultant | HubSpot Freelancer | Hubspot Solution Provider |

Contáctame aquí