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...