Tutorial: Mostrar conteúdo de acordo com o PAÍS (Simples)

  • Autor Autor deskpro123
  • Data de início Data de início
Este tópico foi traduzido automaticamente do espanhol. Ver original
deskpro123

deskpro123

Zeta
Verificación en dos pasos activada
Olá a todos, trago a vocês este pequeno script elaborado por [MENTION=9679]cicklow[/MENTION] e [MENTION=22703]Jorge Reyes[/MENTION] exclusivamente para mim 😀 e eu compartilho com vocês.

O script serve para segmentar conteúdo de acordo com países, é bem simples e bem leve, os dados são obtidos de outra página, então é bem leve para o servidor também.

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';

}

?>

Onde diz MX, você altera pelas 2 letras do seu país que pode encontrar nesta página:

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

Onde diz A2, você busca as letras do seu país. Você pode adicionar mais de um condicional no código para vários países.

Espero que seja útil, um abraço a todos.

Edit 2015 by Cicklow: O post foi editado já que o site (GeoIP) anterior não funciona mais...
 
Última edição por um moderador:
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
obrigado pela contribuição... abraços
 
Obrigado, parece interessante
Pode mostrar um exemplo?
(MP)
 
e como se pode usar este script
 
isso serve para oferecer uma redação diferente de acordo com o país que o visita?
 
e como se pode usar este script

Obrigado, parece interessante
Pode mostrar um exemplo?
(MP)

Vocês poderiam, por exemplo, mostrar algo apenas para o México, um banner, uma publicidade, etc... o que quiserem apenas para determinado país, isso se chama GeoIP... exemplo:
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...';
	}
?>
 
Obrigado, parece interessante
Pode mostrar um exemplo?
(MP)

Veja

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
<?
} 

?>

Assim seria, para mostrar um banner apenas para as pessoas do México, só veriam pessoas com IP do seu país, da mesma forma ali if($api->countryCode == 'MX'){ você pode trocar MX por US, DO ou qualquer código alfa2 de qualquer país que você queira dos que estão na lista.
 
Esta é a versão em 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>

FONTE: jQuery: detectar país do usuário
 
Interessante 😀
 
Mas isso deve ser otimizado para os templates, para isso você usa o Google Webmaster, e seleciona o país que você quer que seja o seu principal, geo map, para o seu site.

E não carrega seu theme de códigos, pesados..
 
Sem dúvida é uma ferramenta muito interessante. Obrigado por compartilhar.
 
muito obrigado pelo tutorial.
 
Esta é a versão em 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>

FONTE: jQuery: detectar país do usuário

sem Jquery e 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>

Fonte: GeoIP2 JavaScript Client API « Maxmind Developer Site

Antes era muito mais fácil a api da maxmind, agora mudaram para objetos!
 
sem Jquery e 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>

Fonte: GeoIP2 JavaScript Client API « Maxmind Developer Site

Antes era muito mais fácil a api da maxmind, agora mudaram para objetos!

Alguém já testou este código com milhares de usuários online? porque o outro código que deixei morre com milhares de usuários online ao mesmo tempo xd
 
Alguém já testou este código com milhares de usuários online? porque o outro código que deixei morre com milhares de usuários online ao mesmo tempo xd

maxmind é um dos maiores provedores de GeoIP, e um dos principais... não creio que caia... mas de última, teste para ver o que acontece...
 
maxmind é um dos maiores provedores de GeoIP, e um dos principais... não creio que caia... mas de última, teste para ver o que acontece...

Vou testar mais tarde então :3
 
Este uso eu para a Adjal
Inserir CODE, HTML ou 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>
 

Tópicos similares

Voltar
Topo