Tenho trabalho muito com o wordpress e recentemente deparei-me com uma dificuldade. Precisei de construir um botão de regresso à página anterior sendo que teria de ser um botão com um link relativo.
Após uma busca na net descobri este simples bocado de código que passo a explicar.
1 2 3
| <!--?php if ( in_category ('5')) { $referer = $_SERVER['HTTP_REFERER'];<br ? --> $is_us = @strpos( $referer, 'OurDomainName'); if($is_us)
{ echo '<a href="' . $referer . '"><img src="arrow-back.png" alt="" /></a>'; }
else { echo '<a href="http://OurDomainName.com/"><img src="arrow-back.png" alt="" /></a>'; } } ? > ; |
A primeira linha verifica se estamos a correr o código para uma categoria específica, se for o caso, a variável “$referer” é igual ao URL de referência.
A segunda linha verifica se o domínio de referência é o nosso, isto porque não queremos que no caso do tráfego ser originário de outro site, que o botão reencaminhe para fora do site.
Se o nosso domínio estiver presente no domínio de referência, assumimos que o visitante veio do nosso site e na terceira linha colocamos o link no site.
Se o domínio não estiver no URL de referência, assumimos que o leitor veio de outro site, para prevenir que o nosso botão reenvie para o link externo, a quarta linha imprime o botão de voltar com link para a nossa homepage.
Se quisermos que o botão aparece em todas as categoris, apague desde a palavra “if” na primeira linha até e incluindo a chaveta na primeira linha. Depois apague uma das chavetas no fim da quarta linha.
Se preferirmos que o botão simplesmente não aparece se o link de referência for outro site, apagamos o código começando na palavra “else” na quarta linha até e incluíndo a primeira chaveta de fecho.
— Read more