Redirecionar Visitantes não Logados para a Página de Login

Este snippet permite que você restrinja o acesso ao conteúdo do seu site WordPress apenas para usuários logados. Visitantes não logados serão redirecionados para a página de login, garantindo que apenas usuários autenticados possam acessar o conteúdo do site.

0
// Função para redirecionar visitantes não logados
function wp24horas_redirect_non_logged_in_users() {
    // Verifica se o usuário não está logado e não está na página de login ou na página de registro
    if ( ! is_user_logged_in() && ! is_page('login') && ! is_page('registro') ) {
        // Redireciona para a página de login
        wp_redirect( wp_login_url() );
        exit;
    }
}
add_action( 'template_redirect', 'wp24horas_redirect_non_logged_in_users' );

Quer ajuda de um especialista para implementar?

Instruções de Uso

Este snippet redireciona todos os visitantes que não estejam logados para a página de login do WordPress. Ele também exclui a página de login e a página de registro do redirecionamento para evitar loops de redirecionamento.

Como funciona:

  1. Definição da Função:
    • function wp24horas_redirect_non_logged_in_users() { ... }: Define a função wp24horas_redirect_non_logged_in_users que será responsável pelo redirecionamento dos usuários.
  2. Verificação de Login:
    • if ( ! is_user_logged_in() && ! is_page('login') && ! is_page('registro') ) { ... }: Verifica se o usuário não está logado e não está acessando a página de login ou a página de registro. Isso impede que os usuários sejam redirecionados enquanto tentam fazer login ou se registrar.
      • ! is_user_logged_in(): Verifica se o usuário não está logado.
      • ! is_page('login') && ! is_page('registro'): Verifica se a página atual não é a página de login nem a página de registro.
  3. Redirecionamento para a Página de Login:
    • wp_redirect( wp_login_url() );: Redireciona o usuário para a página de login padrão do WordPress.
    • exit;: Garante que a execução do script seja interrompida após o redirecionamento, evitando qualquer carregamento adicional da página.
  4. Ação de Redirecionamento de Template:
    • add_action( 'template_redirect', 'wp24horas_redirect_non_logged_in_users' );: Adiciona a função wp24horas_redirect_non_logged_in_users ao gancho template_redirect, que é acionado antes do template ser carregado. Isso garante que a verificação e o redirecionamento ocorram antes que qualquer conteúdo da página seja exibido.

Instruções de Uso

Este código pode ser adicionado ao arquivo functions.php do seu tema ou, preferencialmente, em um plugin específico para o site.

Utilizar um plugin para essas customizações mantém o código organizado e seguro contra atualizações do tema.

Outros Snippets

WooCommerce
Este snippet cria um shortcode que exibe os detalhes de uma reserva do WooCommerce com base no ID do pedido fornecido na URL.
WordPress
Este snippet redireciona todos os visitantes do site que não estejam logados para uma página específica (não a página de login).
WordPress
Este snippet cria um shortcode que exibe uma avaliação por estrelas baseada em um campo personalizado de um post no WordPress.

Últimos Posts

Como Criar um Bloco Dinâmico no WordPress com Renderização PHP

Bloco Dinâmico com Renderização no Servidor

Aprenda a criar um bloco Gutenberg que carrega posts no editor e renderiza via PHP no frontend. Estrutura profissional com render_callback!

Conectando Blocos Gutenberg à REST API

Conectando Blocos com a REST API do WordPress

Aprenda a criar blocos Gutenberg que acessam dados da REST API do WordPress. Exiba posts dinâmicos no editor usando apiFetch, React hooks e boas práticas

Componentes Reutilizáveis e Campos Compostos no Gutenberg

Componentes Reutilizáveis e Atributos Compostos em Blocos Gutenberg

Aprenda como criar componentes React reutilizáveis dentro de blocos Gutenberg e trabalhar com atributos compostos como botão com texto e link. Organização e escalabilidade no desenvolvimento de plugins.

Comentários