Resumo de IA
Se tem um site de membros, uma loja online ou qualquer site onde as pessoas façam login, provavelmente já reparou em como o login padrão do WordPress é pouco útil.
Depois de alguém se registar ou iniciar sessão, o WordPress envia-o para o painel de administração ou para um ecrã de perfil genérico, que é geralmente o último lugar onde quer que os seus utilizadores aterrem.
Configurei o meu quinhão de fluxos de registo e login ao longo dos anos, e a abordagem que mantém as coisas simples é criar os seus próprios formulários e enviar as pessoas exatamente para onde as quer depois.
Neste guia, criará formulários de login e registo personalizados com o WPForms e, em seguida, adicionará redirecionamentos para que os utilizadores vão diretamente para uma página de boas-vindas, um painel de conta ou qualquer página que escolher.
Como Redirecionar Utilizadores Após o Login e Registo no WordPress
Começaremos por criar os formulários, depois abordaremos todas as formas de redirecionar os seus visitantes depois de eles iniciarem sessão ou se registarem. Também lhe mostrarei como
- Porquê Redirecionar Utilizadores Após o Login ou Registo?
- Passo 1: Instalar o Plugin WPForms Pro
- Passo 2: Instalar o Addon de Registo de Utilizadores
- Passo 3: Criar o Seu Formulário de Registo
- Passo 4: Configurar as Definições do Seu Formulário de Registo
- Passo 5: Criar um Formulário de Login
- Passo 6: Incorporar os Seus Formulários de Login e Registo
- Passo 7: Redirecionar Utilizadores Após o Login ou Registo
- Passo 8: Redirecionar as Páginas Padrão de Login e Registo do WordPress (Opcional)
- Resolução de Problemas de Redirecionamentos de Login e Registo
Porquê Redirecionar Utilizadores Após o Login ou Registo?
Por defeito, o WordPress trata todas as contas da mesma forma. Quer alguém seja um cliente pagante, um aluno de um curso ou um membro da comunidade, o login envia-os para /wp-admin, e o ecrã de registo é o formulário simples e sem marca que o WordPress fornece.


Isso é bom para os administradores do site, mas é confuso para todos os outros. Um cliente que acabou de criar uma conta não quer ver o back-end do WordPress. Configurar um redirecionamento resolve isso de várias maneiras:
- Mantenha os utilizadores fora do back-end: Envie clientes e membros para uma página de front-end em vez da área de administração que não têm razão para ver.
- Direcione as pessoas para o que importa: Envie os novos registados para uma página de boas-vindas ou de integração, e os utilizadores que retornam para o painel da sua conta.
- Corresponda à sua marca: Substitua os ecrãs genéricos de login e registo do WordPress por formulários que se pareçam com o resto do seu site.
O WordPress tem um redirecionamento de login integrado, mas aplica-se apenas ao ecrã de login padrão, e alterá-lo geralmente significa editar código.
No momento em que usa o seu próprio formulário de login, obtém uma configuração de redirecionamento simples em vez disso, e esse é o caminho que seguiremos aqui.
Passo 1: Instalar o Plugin WPForms Pro
A forma mais fácil de criar formulários de login e registo personalizados é com o WPForms, o construtor de formulários WordPress mais fácil para iniciantes no mercado. Ele vem com mais de 2.100 modelos de formulários, incluindo modelos de formulários de registo prontos a usar que pode configurar em minutos.
O que mais gosto no WPForms para esta tarefa é que o redirecionamento vive diretamente dentro do formulário. Depois de construir um formulário de login ou registo, escolher para onde os utilizadores vão depois é uma única configuração, pelo que não há suposições e nada para colar no seu tema.
Os formulários de login e registo funcionam com o addon User Registration, e esse addon está disponível na licença WPForms Pro e acima. Ele lida com formulários de registo, login e redefinição de palavra-passe, e permite atribuir funções de utilizador e exigir ativação por e-mail também.


Para começar, compre a licença Pro. Em seguida, instale o WPForms no seu site. Se precisar de ajuda, siga estas instruções sobre como adicionar um plugin ao WordPress.
Atualize para WPForms Pro Agora!
Passo 2: Instalar o Addon de Registo de Utilizadores
Com o WPForms ativo, a próxima coisa a fazer é instalar o addon que potencia os seus formulários. Na sua área de administração do WordPress, vá para WPForms » Addons.


Pesquise por User Registration na barra de pesquisa e, em seguida, clique em Install Addon abaixo dela. O addon instala-se em segundos e ativa-se automaticamente, pelo que estará pronto para criar o seu primeiro formulário de imediato.


Passo 3: Criar o Seu Formulário de Registo
Agora vá a WPForms » Add New para abrir o construtor de formulários e dê um nome ao seu formulário que reconhecerá mais tarde.


Percorra a biblioteca de modelos e escolha o modelo User Registration Form.


O WPForms cria um formulário de registo completo para si, com todos os campos de que um novo utilizador necessita já no lugar.


Cada modelo é totalmente personalizável, pelo que pode arrastar campos adicionais ou remover os que não necessita, como a breve biografia.
Se quiser aprofundar as opções de campos, o nosso guia sobre como criar um formulário de registo de utilizador aborda mais do que é possível. Por agora, vamos configurar as definições do formulário.
Passo 4: Configurar as Definições do Seu Formulário de Registo
É aqui que decide como as pessoas se registam e o que acontece às suas contas depois. Clique em Settings » User Registration dentro do construtor de formulários.


A primeira secção, Field Mapping, é onde associa cada campo do formulário ao detalhe correspondente na conta WordPress do utilizador, como nome de utilizador, e-mail e palavra-passe.


Desloque-se para baixo até à secção User Roles. Aqui escolhe o papel e o nível de acesso que os novos registos recebem. Para uma conta típica de subscritor, escolha Subscriber no menu suspenso.


Logo abaixo encontra-se User Activation & Login. Está desativado por defeito, o que significa que as contas ficam ativas no momento em que alguém envia o formulário. Eu ativaria, pois exigir ativação reduz os registos de spam e dá-lhe mais controlo sobre quem entra.


Ative Enable User Activation e aparecerá um menu suspenso para o método de ativação. Manual Approval significa que aprova cada conta pessoalmente, enquanto User Email envia ao novo utilizador uma mensagem com um link de ativação.


Se optar por User Email, terá opções adicionais para personalizar essa mensagem. Edite o que quiser, mas mantenha a etiqueta inteligente {url_user_activation} no lugar, pois é o link em que as pessoas clicam para ativar a sua conta.


Também pode escolher a página para onde os utilizadores são redirecionados após clicarem no link de ativação. Escolha uma página de confirmação apropriada no menu suspenso.


Quer que as pessoas façam login automaticamente assim que a sua conta for criada? Ative o interruptor Enable Auto Log In e o WPForms fá-las-á iniciar sessão assim que se registarem.


Perto do fundo encontrará a secção Email Notifications. Utilize os interruptores para controlar quais os e-mails que lhe são enviados e ao utilizador, e clique em Edit Template ao lado de qualquer um deles para alterar a redação.


Quando tudo parecer correto, clique em Save no canto superior direito.


Passo 5: Criar um Formulário de Login
Com o formulário de registo concluído, precisa de um formulário de login para as pessoas que regressam. Vá a WPForms » Add New novamente e, desta vez, escolha o modelo User Login Form.


É um formulário simples com campos de nome de utilizador e palavra-passe, mais uma opção Lembrar-me que torna os futuros inícios de sessão mais rápidos para os seus utilizadores.


Para ajustar o comportamento do formulário, abra Definições » Registo de Utilizador para o formulário de início de sessão.


Aqui pode optar por ocultar o formulário de pessoas que já iniciaram sessão e mostrar-lhes uma mensagem em vez disso. Basta ativar o interruptor ao lado de Ocultar Formulário se Utilizador Estiver Iniciado e, em seguida, Guardar o formulário.


Passo 6: Incorporar os Seus Formulários de Login e Registo
Os seus formulários estão criados, pelo que agora irá colocá-los em páginas reais. O WPForms torna esta parte rápida. Clique no botão Incorporar no canto superior direito do construtor de formulários.


Escolha Criar Nova Página, uma vez que está a publicar novas páginas de início de sessão e registo que poderá utilizar mais tarde em substituição das predefinições do WordPress.


Dê um nome à página e clique em Vamos Lá.


O seu formulário é inserido diretamente no conteúdo da página. Clique em Publicar para o tornar ativo.


A sua página de registo está agora ativa e notará que utiliza o estilo do seu tema e os seus campos personalizados em vez da página rígida predefinida do WordPress.
Repita os mesmos passos de incorporação para o seu formulário de início de sessão, para que ambas as páginas estejam prontas. Se preferir colocar os formulários dentro de uma página ou área de widget existente, veja como exibir formulários de início de sessão e registo em qualquer página.


Passo 7: Redirecionar Utilizadores Após o Login ou Registo
Para enviar os utilizadores para um local específico após submeterem um formulário de início de sessão ou registo, edite o formulário, abra Definições » Confirmações e defina o tipo de confirmação para Mostrar Página ou Ir para URL.


Comece por editar o formulário para o qual pretende adicionar um redirecionamento. Em seguida, vá para o separador Confirmações nas definições do seu formulário.


Por predefinição, o WPForms mostra uma mensagem de confirmação após a submissão.
Mude o Tipo de Confirmação para Mostrar Página e escolha qualquer página no seu site, ou selecione Ir para URL e cole um link personalizado.
A partir de agora, qualquer pessoa que submeta o formulário será reencaminhada para lá em vez de ver uma mensagem.


A mesma definição funciona para ambos os formulários, e define-os independentemente. Assim, o seu formulário de registo pode enviar utilizadores novos para uma página de boas-vindas ou de integração, enquanto o seu formulário de início de sessão envia utilizadores recorrentes diretamente para o painel da sua conta.
Se alguma vez precisar de redirecionar após um formulário de contacto ou de encomenda normal, o processo é o mesmo, e pode ler mais no nosso guia sobre como redirecionar utilizadores após a submissão de um formulário.
Passo 8: Redirecionar as Páginas Padrão de Login e Registo do WordPress (Opcional)
Neste ponto, as suas páginas personalizadas estão ativas, mas os visitantes ainda podem aceder aos antigos ecrãs do WordPress diretamente através destes URLs:
- Página de registo:
https://example.com/wp-login.php?action=register - Página de início de sessão:
https://example.com/wp-login.php
Se pretender que esses URLs predefinidos redirecionem para as suas novas páginas, pode adicionar um pequeno trecho de código. Recomendo que o faça com o plugin gratuito WPCode em vez de editar diretamente o ficheiro functions.php do seu tema, uma vez que o WPCode permite adicionar snippets de forma segura sem arriscar o seu site se algo correr mal.
Para a página de registo, adicione este trecho e troque /registration-url pelo slug da sua nova página de registo:
// Redirect the default WordPress registration page
function my_registration_page_redirect() {
global $pagenow;
if ( strtolower( $pagenow ) == 'wp-login.php' && isset( $_GET['action'] ) && strtolower( $_GET['action'] ) == 'register' ) {
wp_redirect( home_url( '/registration-url' ) );
exit;
}
}
add_action( 'init', 'my_registration_page_redirect' );
Para a página de início de sessão, adicione este trecho e substitua /login-url pelo slug da sua página de início de sessão personalizada:
// Redirect the default WordPress login page
function my_login_page_redirect() {
$login_page = home_url( '/login-url' );
$page_viewed = basename( $_SERVER['REQUEST_URI'] );
if ( $page_viewed == 'wp-login.php' && $_SERVER['REQUEST_METHOD'] == 'GET' ) {
wp_redirect( $login_page );
exit;
}
}
add_action( 'init', 'my_login_page_redirect' );
A linha exit; é importante aqui. Sem ela, algumas configurações (especialmente multisite) ainda podem direcionar os utilizadores para o ecrã padrão wp-signup.php. Com estes trechos implementados, as suas páginas personalizadas de início de sessão e registo substituem totalmente os padrões do WordPress.
Resolução de Problemas de Redirecionamentos de Login e Registo
Se a sua página de início de sessão continuar a atualizar ou a devolvê-lo ao formulário em vez de o redirecionar, é quase sempre um problema de cache do navegador ou de cookies. Limpe o seu cache e cookies, e depois teste novamente numa janela privada.
Se o redirecionamento não ocorrer de todo, abra as definições de Confirmações do formulário e confirme que o tipo está definido como Mostrar Página ou Ir para URL, e não como mensagem padrão.
Se ativar Ativar Início de Sessão Automático e as suas entradas ou e-mails de notificação pararem de chegar, teste o formulário com o início de sessão automático desativado para confirmar que essa é a causa. Quando for, uma correção de entregabilidade como WP Mail SMTP geralmente resolve o problema do e-mail.
FAQs Sobre Redirecionamentos de Início de Sessão e Registo no WordPress
Configurar um redirecionamento de formulário de início de sessão no WordPress levanta algumas questões comuns, especialmente em torno de funções de utilizador e opções sem código. Aqui estão respostas rápidas antes de criar os seus próprios redirecionamentos de início de sessão e registo.
Posso redirecionar utilizadores para páginas diferentes com base na sua função?
Um redirecionamento de confirmação do WPForms envia todos os que submetem esse formulário para o mesmo destino. Se quiser páginas diferentes para funções diferentes, a abordagem mais simples do WPForms é usar um formulário separado para cada função, cada um com o seu próprio redirecionamento. Para ramificação por função no início de sessão padrão, usaria o método de código opcional no Passo 8 com o filtro login_redirect do WordPress.
Posso configurar redirecionamentos de início de sessão sem escrever nenhum código?
Sim. Os passos 1 a 7 não requerem código algum. Cria os formulários, depois define o redirecionamento nas definições de Confirmações de cada formulário.
A única parte que envolve código é o Passo 8, que é opcional e só é necessário se quiser redirecionar os URLs padrão de início de sessão e registo do WordPress.
Um formulário de início de sessão personalizado redirecionará os utilizadores como o início de sessão padrão do WordPress faz?
Na verdade, dá-lhe mais controlo. O redirecionamento de início de sessão padrão do WordPress é limitado e geralmente precisa de código para ser alterado. Um formulário de início de sessão do WPForms permite-lhe escolher o destino a partir de uma configuração, e pode colocar esse formulário em qualquer página que desejar.
Como redireciono a página de início de sessão padrão do WordPress para a minha personalizada?
Adicione o trecho de redirecionamento de início de sessão do Passo 8 usando o plugin gratuito WPCode e substitua o slug placeholder pela sua página de início de sessão personalizada. Depois disso, qualquer pessoa que visite wp-login.php será direcionada para a sua página de início de sessão com a sua marca em vez disso.
Em seguida, Personalize a Sua Página de Início de Sessão do WordPress
Agora que os seus redirecionamentos estão a funcionar, vale a pena dar à sua experiência de início de sessão o mesmo polimento que ao resto do seu site.
O nosso guia sobre como criar um formulário de início de sessão personalizado para uma melhor marca do site aborda o lado do design e, se quiser comparar as suas opções, dê uma vista de olhos nos melhores plugins de página de início de sessão do WordPress.
Crie Agora os Seus Formulários de Início de Sessão e Registo
Pronto para construir o seu formulário? Comece hoje com o plugin construtor de formulários WordPress mais fácil. O WPForms Pro inclui muitos modelos gratuitos e oferece uma garantia de devolução do dinheiro em 14 dias.
Se este artigo o ajudou, por favor siga-nos no Facebook e Twitter para mais tutoriais e guias gratuitos do WordPress.



O redirecionamento de /wp-login?action=register funciona bem ao usar este código, mas como faria o mesmo para as páginas /login e /wp-login.php?
Tentei fazer isso com este código, mas realmente não tenho ideia do que estou a fazer. Basicamente, estou apenas a adivinhar aqui.
// Redirecionar Página de Início de Sessão
function my_login_page_redirect()
{
global $pagenow;
if ( ( strtolower($pagenow) == ‘wp-login.php’) && ( strtolower( $_GET[‘action’]) == ‘login’ ) ) { wp_redirect( home_url(‘/my-account’)); } }
add_filter( ‘init’, ‘my_login_page_redirect’ );
Olá John,
Ótima pergunta. Na verdade, partilhámos o código de que precisaria para isso no nosso tutorial sobre páginas de início de sessão personalizadas (por favor, veja o ponto #2 nesse artigo).
Espero que ajude! 🙂
Olá,
É possível redirecionar o utilizador para um local específico com base no botão que acabou de clicar para se registar/iniciar sessão?
Isso significa que cada botão diferente estaria ligado a um formulário de registo/início de sessão diferente, cada um redirecionando para um endereço específico.
Seria possível?
Obrigado desde já
Olá Sowx,
Receio não ter 100% de certeza da sua pergunta, mas sim, pode associar botões no seu website a diferentes formulários e, em seguida, depois de esses formulários serem submetidos, redirecionar o utilizador para um URL diferente. Se precisar de mais alguma informação sobre como redirecionar um utilizador após a submissão de um formulário, consulte o nosso guia!
Espero que isto ajude!
Olá, o início de sessão automático e o redirecionamento funcionam muito bem, mas por alguma razão não estou a receber os e-mails de notificação. (os utilizadores também não estão disponíveis na secção de entradas)
e quando desativo o início de sessão automático, volta a funcionar.
Olá Kami,
Lamento saber que está a ter problemas com a entrega de notificações por e-mail. Recomendo que consulte o nosso artigo que lhe mostra como corrigir este problema usando o plugin WP Mail SMTP.
Espero que isto ajude! 🙂
Olá, obrigado pela resposta, as notificações por e-mail estão a funcionar bem agora, mas o outro problema ainda persiste, o formulário ainda não está a guardar as entradas dos utilizadores, já testei muitas vezes, o início de sessão automático e o redirecionamento estão a funcionar muito bem, e as notificações por e-mail também, mas por alguma razão não está a guardar as entradas dos utilizadores no formulário, por favor, sugira o que fazer. Obrigado.
Olá Kami,
Se tiver uma licença paga do WPForms, entre em contacto com a nossa equipa de suporte para que possam analisar o problema mais a fundo.
Obrigado! :)
Olá! Estou a receber um erro quando tento adicionar este código copiado ao plugin "snippits" detalhado em "como colar snippets de código no seu ficheiro functions.php".
Código:
// Redirecionar Página de Registo
function my_registration_page_redirect()
{
global $pagenow;
if ( ( strtolower($pagenow) == ‘wp-login.php’) & ( strtolower( $_GET[‘action’]) == ‘register’ ) ) {
wp_redirect( home_url(‘https://date.intro-social.com/new-user/’));
}
}
add_filter( ‘init’, ‘my_registration_page_redirect’ );
Mensagem de Erro:
Não entre em pânico
O snippet de código que está a tentar guardar produziu um erro fatal na linha 6:
erro de sintaxe, ';' inesperado
A versão anterior do snippet permanece inalterada e o resto deste site deverá funcionar normalmente como antes.
Por favor, use o botão de voltar no seu navegador para regressar à página anterior e tente corrigir o erro de código. Se preferir, pode fechar esta página e descartar as alterações que acabou de fazer. Nenhuma alteração será feita neste site.
Encontrei uma solução alternativa. Usando um gestor de redirecionamentos global, consegui redirecionar o login do wordpress para o meu wpform.
Olá Tyler – Obrigado por nos informar! Ainda bem que conseguiu resolver, sinta-se à vontade para nos contactar com quaisquer outras questões!
Olá Tyler, tivemos um pequeno problema no site durante um curto período de tempo, que inseriu alguns caracteres especiais no código. Presumo que tenha testado o código durante esse período.
A formatação do código foi corrigida agora, poderia por favor tentar novamente com esse código e deverá funcionar corretamente.
Pedimos desculpa pelo inconveniente!
Penso que precisa de adicionar "exit", por exemplo:
if ( wp_redirect( home_url(‘/registration’) ) ) { exit; }
Caso contrário, um site multissite ainda exibirá a página wp-signup.php.
Olá George!
Obrigado pelo seu feedback sobre isto. Anotei para a nossa equipa e iremos analisar a sua sugestão.
Agradecemos que tenha dedicado tempo para nos contactar com isto 🙂
após o login do utilizador, a HOME (a página principal) não é acessível; noutras palavras, redireciona persistentemente para uma página de perfil
todas as outras subpáginas (como contacto) são acessíveis, apenas a HOME não é, como disse após o login
Olá Gabor,
Desculpe por qualquer problema que esteja a enfrentar! Se for titular de uma licença paga, pode por favor contactar a nossa Equipa de Suporte e teremos todo o gosto em ajudar.
Obrigado,