Códigos do Guru

Redireciona o usuário para uma página dependendo de sua cidade

Este código é destinado a ser usado em um site baseado em WordPress e possui três funções principais que trabalham juntas para redirecionar um usuário para uma URL específica baseada na sua cidade.

get_user_ip() é a primeira função que é responsável por obter o endereço IP do usuário atual. Ele verifica se o endereço IP é compartilhado ou é passado através de um proxy, e retorna o endereço IP correto.

get_user_city() é a segunda função que usa a API ipapi para determinar a cidade do usuário baseada em seu endereço IP. Esta função faz uma solicitação à API ipapi, decodifica a resposta e retorna apenas o nome da cidade.

redirect_user_city() é a terceira função que faz a verificação final e redireciona o usuário para a URL correta baseada na cidade. Se a cidade do usuário for “Manaus”, ele será redirecionado para /cidade/manaus, e se a cidade do usuário for “Teresina”, ele será redirecionado para /cidade/teresina.

Finalmente, o gancho do WordPress template_redirect é adicionado ao final do código para iniciar o redirecionamento de cidade quando uma página é carregada.

Visualização do código

VOCÊ PRECISA DE PERMISSÃO PRA OLHAR O CÓDIGO

l' u ;  u
o$/QRc[ w   Utep rR{(
s  ) D dieV'R
_]
'e( $r$TsrE_o sp) fRe$E__s[i n  =rd_i Tnr.AeeE
 r' /! (nrri
 
udtitex(S er).  )t=   tp&{$ psv   r;mp
n'yrHD $ o 
=y 
 cec/ )ydC  rd
 .ytcVt cw (r$TR'ipaEe fP u
  ps mf  
 acl$
' '
$Rthmc '( Hon_did
ah (diU/tetE$= ']eui()i dciuD=_uR(i
   eRetsrmh  e=,ee ' fCDprE nT{t _  
O daanaEeR mt __
x{e$;iN(keaP )
_e)e_Spoe_ypSc! m  X)cssn
); t/rp/=ci{irf&ea;u
]Rwn_u/sE)l  E sd
 e etts

IPrWt ) }f    S
Tr 
!
 t_E    i=)n(ippuoesOcl  'mcR[  c
$c  iay_c/ (eaF$'r
e=i!'_eui{
 e
 l'   l _{'nR E
_/e/ pute]o  tinV; I
Pr rseTa 
i iE_ '_sr, 
  a
; TT  'st_;rr
 on  e/gds'  t ue$p'
eeo =s}=E __i Rtfr r
fa)ig 'soMt
_}  rru  OpF_ni(s  h
c'dm$sta]Dly Wic Py$xe;ToeV t$_dtr
'c ;r
e_]sa
jsee /XeeI:c/e
i_i'(_ii;t_c=$  (Epce aecnp 
p ;r_ f'pjr [lVuR_;dtncp a  /
   R p} t_'n& g aruy rS) P d
r; p
 o [egew_rst R_ rc  leu MeuL
(S$no$rd/_ tn
eA H$t   __Eo/[ ptidRRt_b(Eeau{  ,F 
 yen 
iTaEt$
OE Ri
LtcOcr   [u  'T__Rbit u'  Apki =c NIl'D  $t  t==Iee cn u]eia )'aT E  'yrpi 
(wee
s
't 
ifyigr }inrricat  'e
 &n'}i__d'$  eo R r
)e St; tiF yutsra Tooet
 pip V 'm}nereR; g_leH /ei_t   Ed}e)tsi