Hace unos días se me había presentado una situación en donde un amigo me había preguntado cómo podía lograr mostrar solamente un banner en determinado país. Se me ocurrieron varias soluciones a este problema y es por eso que recurrí a PHP.
Este script es muy sencillo, te lo muestro a continuación:
<?php
$var = file_get_contents('http://ip-api.com/json/'.$_SERVER['REMOTE_ADDR']);
$location = json_decode($var);
if($location->countryCode == 'MX'){
echo 'contenido para México';
}else if($api->countryCode == 'AR'){
echo 'contenido para Argentina';
}else{
echo 'ooooopss... no perteneces a ningún país!:(';
}
?>
La función de este script es muy sencilla, en primera instancia se crea una variable y se usa file_get_contents
para hacer una petición a ip-api.com. Posteriormente se llama a json_decode
para obtener la información del país del visitante.
Este script funciona con los códigos ISO de cada país, puse dos ejemplos para México (MX) y Argentina (AR) en donde se tiene que reemplazar contenido para Argentina
para mostrar un mensaje o una imagen.
Para agregar un nuevo país
Tenemos que concatenar un nuevo valor:
}else if($api->countryCode == 'CO'){
echo 'contenido para COLOMBIA';
Quedando de la siguiente manera:
$var = file_get_contents('http://ip-api.com/json/'.$_SERVER['REMOTE_ADDR']);
$location = json_decode($var);
if($location->countryCode == 'MX'){
echo 'esto es una prueba de gabrielchavez.me para mexico! :D';
}else if($api->countryCode == 'AR'){
echo 'contenido para Argentina';
}else if($api->countryCode == 'CO'){
echo 'contenido para COLOMBIA';
}else{
echo 'ooooopss... no perteneces a ningún país!:(';
}
Vídeo de como funciona el script
Básicamente eso es todo, si quieres incrustar contenido html dentro de php lo puedes hacer libremente ya que no tendrás problemas al combinar html con php.
Si tienes alguna duda por favor no dudes en ponerte en contacto a través de mi formulario web, con gusto te ayudaré en todo lo que necesites.
Obtén beneficios exclusivos
Suscríbete al boletín y obtén beneficios exclusivos directo en tu correo.
Gracias por suscribirte...
Algo salió mal...
Excelente artículo Gabo
Muchas gracias Daniel, un saludo!
Nunca había pensado que podría mostrar distintos banners en mi web dependiendo del país del visitante. ¡Gracias por la guía, muy útil!
También se puede hacer con JS pero prefiero PHP porque tengo más experiencia en este lenguaje. Me alegra que te haya gustado amigo, ¡un saludo desde México!.
Pingback: Script Viral de Facebook V2.0 con PHP y HTML - Gabriel Chávez
Muchas gracias
Muchas gracias a ti Manuel! un gusto verte por el blog.
Saludos desde México! 😀