Tutorial: Mostrar contenido segun PAIS (Simple)

  • Autor Autor deskpro123
  • Fecha de inicio Fecha de inicio
deskpro123

deskpro123

Zeta
Verificación en dos pasos activada
Verificado por Whatsapp
Hola a todos, les traigo este pequeño script elaborado por [MENTION=9679]cicklow[/MENTION] y [MENTION=22703]Jorge Reyes[/MENTION] exclusivamente para mi 😀 y yo lo comparto con ustedes.

El script sirve para segmentar contenido segun paises, es bien simple y bien ligero, los datos los toma de otra pagina asi que es bien ligero para el servidor tambien.

PHP:
<?php

$var = file_get_contents('https://freegeoip.net/json/'.$_SERVER['REMOTE_ADDR']);
$api = json_decode($var);

if($api->country_code == 'MX'){

echo 'Soy de Mexico';

}

?>

En donde dice MX lo cambian por las 2 letras de tu pais que puedes encontran en esta pagina:

2-letter, 3-letter, country codes for all countries in the world

Donde dice A2 buscas las letras de tu pais. Puedes agregar mas de un condicional en el codigo para varios paises.

Espero les sirva, un saludo a todos.

Edit 2015 by Cicklow: Se edito el post ya que el sitio (GeoIP) anterior no funciona mas...
 
Última edición por un moderador:
gracias por el aporte... saludos
 
Gracias se ve interesante
Puedes mostrar un ejemplo?
(MP)
 
sirve eso para ofrecer una redaccion diferente segun el pais que lo visitan?
 
y como se puede usar este script

Gracias se ve interesante
Puedes mostrar un ejemplo?
(MP)

Podrian por ejemplo mostrar algo solo para mexico, un banner, una publicidad, etc... lo que quieran solo para determinado pais, se llama GeoIP esto...ejemplo:
PHP:
<?php
	$var = file_get_contents('http://smart-ip.net/geoip-json/'.$_SERVER['REMOTE_ADDR']);
	$api = json_decode($var);

	if($api->countryCode == 'MX'){
		echo 'banner para mexico';
	}else if($api->countryCode == 'AR'){
		echo 'otra cosa para argentina';
	}else{
		echo 'algo para si no es nada de las anteriores...';
	}
?>
 
Gracias se ve interesante
Puedes mostrar un ejemplo?
(MP)

Mira

PHP:
<?php 

$var = file_get_contents('http://smart-ip.net/geoip-json/'.$_SERVER['REMOTE_ADDR']); 
$api = json_decode($var); 

if($api->countryCode == 'MX'){ 
?>
Codigo Banner de anuncios para gente de mexico
<?
} 

?>

Asi seria, para mostrar un banner solo a la gente de mexico, solo lo veria gente con IP de tu pais, asi mismo ahi if($api->countryCode == 'MX'){ puedes cambiar MX por US, DO o cualquier codigo alfa2 de cualquier pais que quieras de los que estan en la lista.
 
Esta es la versión en javascript

HTML:
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$.getJSON('http://api.wipmania.com/jsonp?callback=?', function (data) {
  alert('País: ' + data.address.country);
});
</script>

FUENTE: jQuery: detectar país del usuario
 
Interesante 😀
 
Pero esto debe ser optimizado para las plantillas,,para eso usas google web master,y selccionas el pais que quieres que sea tu principal,geo map. para tu sitio.

Y no cargas to theme de codigos,pesados..
 
Sin duda una es una herramienta muy interesante. Gracias por compartirlo.
 
muchas gracias por el tutorial.
 
Esta es la versión en javascript

HTML:
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$.getJSON('http://api.wipmania.com/jsonp?callback=?', function (data) {
  alert('País: ' + data.address.country);
});
</script>

FUENTE: jQuery: detectar país del usuario

sin Jquery y agregados
HTML:
<script type="text/javascript" src="//js.maxmind.com/js/apis/geoip2/v2.0/geoip2.js"></script>

<script type="text/javascript">

var onSuccess = function(location){
    alert(
        "Lookup successful:\n\n"
        + JSON.stringify(registered_country, undefined, 4)
    );
};

var onError = function(error){
    alert(
        "Error:\n\n"
        + JSON.stringify(error, undefined, 4)
    );
};

geoip2.city(onSuccess, onError);

</script>

Fuente: GeoIP2 JavaScript Client API « Maxmind Developer Site

Antes era mucho mas facil la api de maxmind, ahora han cambiado a objetos!
 
sin Jquery y agregados
HTML:
<script type="text/javascript" src="//js.maxmind.com/js/apis/geoip2/v2.0/geoip2.js"></script>

<script type="text/javascript">

var onSuccess = function(location){
    alert(
        "Lookup successful:\n\n"
        + JSON.stringify(registered_country, undefined, 4)
    );
};

var onError = function(error){
    alert(
        "Error:\n\n"
        + JSON.stringify(error, undefined, 4)
    );
};

geoip2.city(onSuccess, onError);

</script>

Fuente: GeoIP2 JavaScript Client API « Maxmind Developer Site

Antes era mucho mas facil la api de maxmind, ahora han cambiado a objetos!

ALguien ha probado con este codigo con miles de usuarios online? porque el otro codigo que deje se muere con miles de usuarios online al mismo tiempo xd
 
ALguien ha probado con este codigo con miles de usuarios online? porque el otro codigo que deje se muere con miles de usuarios online al mismo tiempo xd

maxmind es uno de los mayores proveedores de GeoIP, y uno d los principales... no creo que se caiga... pero de ultima testealo a ver que sale...
 
maxmind es uno de los mayores proveedores de GeoIP, y uno d los principales... no creo que se caiga... pero de ultima testealo a ver que sale...

Lo probare mas tarde entonces :3
 
Este uso yo para adjal
Insertar CODE, HTML o PHP:
<script type="text/javascript" src="http://j.maxmind.com/app/geoip.js"></script>
<script type="text/javascript">
if (geoip_country_code() == 'AR') 
	  {
        document.write("HOLA ARGENTINO");
          } 
	  else if (geoip_country_code() == 'MX') 
	  {
	  document.write("HOLA MEXICANO");
	  }
	  else 
	  {
	  document.write("HOLA seas de donde seas ñ.ñ");
	  }
</script>
 

Temas similares

Atrás
Arriba