Forçar usuários a se conectar antes de ler postagens no WordPress

Se o seu blog tiver uma área restrita que você não deseja divulgar a todos os visitantes, apenas para membros, então você pode querer obrigar os usuários a se conectar antes de ler essas postagens . Felizmente, o WordPress possui uma função integrada que pode nos ajudar a fazer isso.

WordPress: forçar usuários a se conectar antes de ler postagens

A função é auth_redirect (), é assim que funciona: quando é chamado a partir de uma página, verifica se o usuário que visualiza a página está logado. Se o usuário não estiver logado, eles são redirecionado para a página de login . O usuário é redirecionado de forma que, ao fazer o login, eles serão enviados diretamente para a página que eles originalmente estavam tentando acessar .

Ao usar esta função, podemos implementar nosso código que verifique se a publicação está restrita ou não e redireciona os usuários para a página de login, se necessário.

Basta colar o seguinte código no tema do seu tema functions.php Arquivo:

function my_force_login () {
     $ global;

     se (! is_single ()) retornar;

     $ ids = array (188, 185, 171);  // matriz de IDs de postagem que forçam o login para ler

     se (in_array ((int) $ post-> ID, $ ids) &&! is_user_logged_in ()) {
     auth_redirect ();
     }
     } 

Altere a matriz de IDs de postagem para atender às suas necessidades. Depois disso, abra o header.php arquive e coloque o seguinte código no topo:

O código é simples, mas você pode expanda com mais opções como: requer login em algumas categorias específicas, crie uma página de opções para entradas de entrada fáceis, etc.

A função auth_redirect () está disponível desde o WordPress 1.5.