Como redireccionar os usuários depois do login no seu blog WordPress - Ensinar Dinheiro
Como redireccionar os usuários depois do login no seu blog WordPress
10/08/2011 Luis FerreiraInternet Marketing • Wordpress
Para quem trabalha com o WordPress regularmente para criar sites de vários tipos, como por exemplo criar sites de compras coletivas, criar diretórios de artigos, criar sites de notícias como o Dihitt, criar sites de emprego, etc., a utilização de algumas das funções nativas do WordPress pode ser extremamente importante, principalmente quando você cria um projeto que tem como objetivo não se parecer com o próprio WordPress. Recentemente os colegas do digwp falaram sobre redireccionamentos, e neste artigo vamos dar-lhe a conhecer vários tipos de redireccionamentos que o próprio WordPress permite, e que na verdade possibilitam-lhe redireccionar os seus usuários para páginas internas ou externas, para a mesma página onde estavam, etc.
FUNÇÃO WP_REDIRECT
A função wp_redirect é uma função para redireccionar todos os usuários para um endereço URL absoluto. URLs absolutos são basicamente endereços URL completos deste género:
http://www.escolawp.com/2011/02/porque-e-que-o-wordpress-e-melhor-que-o-blogger/
http://www.escolawp.com/contactos/
Para redireccionar os seus usuários usando a função wp_redirect, copie e cole o seguinte trecho de código para o ficheiro do seu template wordpress:
Os parâmetros da função wp_redirect são dois em número:
$location = O URL absoluto para o qual o usuário será redireccionado. Não existe padrão.
$status = O código de estado usado. Por exemplo, 301, 302, etc. O padrão é 302.
Você poderá usar as template tags para o parâmetro $location, por exemplo:
Para usar um código de estado que não seja o padrão 302, especifique-o desta forma:
Este código irá enviar o usuário para a página exemplo.com juntamente com o código de estado 301 (Movido permanentemente). O código padrão 302 deverá ser usado para redireccionamentos temporários.
FUNÇÃO AUTH_REDIRECT
A função auth_redirect, é uma função simples que basicamente obriga o usuário a fazer o login para que possa aceder a determinadas páginas ou conteúdos. Por exemplo, imaginemos que você tem uma página de "downloads" que apenas é acessível a usuários registrados. Para prevenir o acesso a essa página por usuários que não fazem login, adicionaríamos o seguinte código no topo dessa mesma página:
Esta função extremamente útil, verifica se o usuário está logado ou não no site, e redirecciona-o para a página de login caso não esteja. Por padrão, o usuário será redireccionado de volta para a página de onde veio (ex., a página de downloads). De momento esta função não aceita parâmetros.
FUNÇÃO WP_LOGOUT_URL
A função wp_logout_url retorna um URL da página de logout do seu blog. Mas poderá redireccionar o usuário para qualquer outro URL usando o parâmetro $redirect:
O parâmetro $redirect é basicamente uma string de redireccionamento de URL. Alguns exemplos:
A linkagem de logout automática é fabulosa.
FUNÇÃO IS_USER_LOGGED_IN
Por fim temos a função is_user_logged_in, que tecnicamente não faz qualquer tipo de redireccionamento, mas permite-lhe verificar se o usuário está ligado ou não. Eis um exemplo que deverá funcionar em qualquer template de página:
A função is_user_logged_in retorna valores TRUE ou FALSE, dependendo do estado do usuário. Portanto, para mostrar conteúdos customizados quando o usuário está ligado, você poderá usar o seguinte código:
<p>Bem-Vindo, usuário!</p>
Se desejar, poderá ainda usar a função is_user_logged_in juntamente com outras template tags e códigos PHP para retornar resultados mais definidos. Por exemplo, poderemos servir conteúdos customizados a usuários que esteja ligados e numa determinada localização do seu site/blog:
Este exemplo demonstra a flexibilidade das tags condicionais do WordPress e como a função is_user_logged_in pode ser usada para controlar outro tipo de ações do usuário.