Restringindo o acesso às páginas do WordPress e criando uma área de membros
Publicados: 2016-02-10Quer publicar cursos premium ou algum produto informativo? Você pode querer restringir o conteúdo do WordPress apenas aos leitores/membros que pagam por ele. E oculte conteúdo para visitantes em geral. Com o WordPress, você pode proteger facilmente essas informações usando os vários meios de restrição de conteúdo que o WordPress suporta imediatamente ou com a ajuda de plugins.
Veremos esses diferentes métodos neste artigo. Vamos discutir:
- A diferença entre páginas protegidas por senha e privadas (e onde as duas soluções ficam aquém)
- Um hack de 2 minutos para criar uma Área de Membros simples no seu site WordPress (sem usar um plugin)
- Fazendo com que seus artigos da base de conhecimento apareçam em sua Área de Membros (esta seção é para você SE você usar nosso tema KnowAll ou solução Heroic Knowledge Base)
- Plug-ins gratuitos que ajudarão você a controlar o acesso às páginas, postagens e outros conteúdos do seu site
Vamos começar entendendo a diferença entre conteúdo privado e protegido por senha.
Crie facilmente uma base de conhecimento privada pesquisável com a Heroic Knowledge Base.
Obtenha o plug-inProtegido por senha versus privado
A maneira mais simples de restringir o acesso a uma página específica (ou outro conteúdo de postagem) é usar as diferentes configurações de ' Visibilidade ' que o WordPress fornece por padrão.
Você pode encontrar essas opções no painel direito onde quer que você adicione uma nova página ou postagem:

Nas configurações de Visibilidade, existem 3 opções para a visibilidade de uma página (ou postagem):
- Público – Nesta configuração padrão, o conteúdo está disponível para todos os visitantes do site
- Protegido por senha – Aqui, apenas os leitores com a senha da página (ou post) podem desbloquear o acesso ao conteúdo
- Privado – Esta opção concede acesso a usuários específicos com base em sua função
A segunda e terceira opções de visibilidade permitem restringir determinado conteúdo.
Vamos ver como:
1. Páginas/postagens protegidas por senha
Esta é uma opção muito simples que oferece a capacidade de proteger com senha páginas e postagens individuais simplesmente atribuindo uma senha a essa página (ou postagem).
Qualquer pessoa que saiba a(s) senha(s) pode acessar o conteúdo.
Agora, essa opção funciona se você tiver uma página ou duas que deseja ocultar do público em geral. No entanto, você pode imaginar que, se tiver centenas de artigos para proteger, terá que manter e distribuir centenas de senhas com todos os leitores qualificados.
Outro problema com esse método é que, se um usuário encontrar esse conteúdo ou clicar em um link para uma página protegida por senha, verá uma tela solicitando uma senha, para saber que há algum conteúdo protegido ou exclusivo em seu site . Então, se você não quer que as pessoas que não têm acesso conheçam esse conteúdo, então esse método não vai resolver o seu propósito.
A captura de tela a seguir mostra um exemplo de um recurso protegido por senha:

Além disso, a proteção de uma página por senha não a remove do site se você não tiver permissão para visualizá-la. Em vez disso, a palavra ' Protegido: ' é adicionada ao início do título, que tem seus usos, mas não é ideal se você não quiser que as pessoas saibam que há conteúdo privado no site.

2) Marcar páginas/postagens como privadas
As Páginas Privadas não exigem senhas individuais para serem desbloqueadas. O acesso a essas páginas é concedido após a verificação da função de um usuário. Normalmente, apenas administradores ou editores do site podem visualizar essas páginas privadas.
Veja como uma página marcada como privada se parece:

A outra grande diferença entre páginas protegidas por senha e privadas é que, se você não tiver privilégios suficientes para visualizar uma página, ela não será exibida no site em nenhum lugar.
Isso é especialmente útil se você não quiser que o visitante médio do site saiba que há conteúdo adicional no site.

Está claro:
Das duas opções, apenas a configuração de visibilidade privada faz sentido se você deseja restringir muito conteúdo em seu site.
Mas como você pode ver, você não pode dar a cada usuário acesso de nível de administrador ou editor em seu site. O que significa que você precisa introduzir outro nível de associação ( assinantes ). E, em seguida, defina o nível de visibilidade das páginas privadas para o dos assinantes. Dessa forma, todos os seus assinantes poderão acessar todo o conteúdo restrito.
Veja como você pode implementar este sistema de acesso simples configurando uma Área de Membros:
Criando uma área de membros simples
Primeiro, crie um conjunto de páginas que estará disponível apenas para os membros. Torne todas essas páginas privadas.
Para fazer isso, você precisa adicionar uma nova função e ação ao arquivo functions.php em seu tema.
Então, vá para o arquivo functions.php em seu tema e adicione o seguinte código a ele:
/**
* Add read_private_posts capability to subscriber
* Note this is saves capability to the database on admin_init, so consider doing this once on theme/plugin activation
*/
add_action ('admin_init','add_sub_caps');
function add_sub_caps() {
global $wp_roles;
$role = get_role('subscriber');
$role->add_cap('read_private_posts');
}Tudo isso altera os recursos (permissões) atribuídos à função Assinante para incluir a capacidade de ler postagens privadas. Observe que esta é uma ação única, portanto, provavelmente é melhor executar a ativação do tema/plugin ou comentar o código quando terminar. Consulte as notas de orientação do Codex em add_cap. Além disso, se você quiser remover o recurso, precisará alterar o código para usar a função remove_cap.

Configurando o login para a Área de Membros
Agora que sua Área de Membros está pronta, é hora de facilitar o login dos assinantes. Claro, seus usuários podem usar o link yourwebsite.com/wp-login.php, mas você concorda que isso não é muito fácil de usar.
Para configurar caixas de login amigáveis, você pode usar o plug-in de estilo da página de login.
O estilizador de página de login permite criar páginas de login para o seu site WordPress. Você pode simplesmente adicionar um item chamado 'Login' ao seu menu principal e vinculá-lo à página de login personalizada projetada com o Styler de página de login.
Existem alguns outros plugins também, mas a maioria deles não foi atualizada por pelo menos um ano, então certifique-se de verificar se eles são compatíveis antes de usá-los.
Depois de disponibilizar seu conteúdo privado para seus assinantes por meio de uma tela de login amigável, você deve terminar.
Na próxima seção, veremos como você pode fazer com que seus artigos da base de conhecimento (alimentados por Heroic Knowledge Base) apareçam em sua área de membros.
Obtendo a Área de Membros para incluir artigos da Base de Conhecimento Heroica
Se você usar nosso tema KnowAll ou o plugin Heroic Knowledge Base para alimentar a base de conhecimento do seu site, poderá tornar seu conteúdo de suporte acessível a seus assinantes diretamente na Área de Membros!
Comece instalando o plugin Advanced Custom Fields.
Anteriormente, criamos um grupo de campos personalizado chamado ' Opções do produto '.
Para este tutorial, estou renomeando 'Opções de Produto' para ' Categorias da Base de Conhecimento ' A próxima coisa a fazer é editar este grupo para incluir páginas e postagens. No momento, o campo personalizado só está definido para exibição se o tipo de postagem for um produto. Mas agora queremos poder aplicá-lo também às páginas.
Para fazer isso, vá para campos personalizados no admin e edite as opções do produto.

Depois de configurado, crie os artigos da base de conhecimento que você pretende disponibilizar apenas para membros pagos. Defina todas essas páginas como privadas para que não possam ser acessadas diretamente. Atribua-os a uma categoria, diga ' Categoria de conteúdo restrito '. Mais tarde, você pode selecionar esta categoria para ser exibida em suas páginas restritas.

A etapa final é alterar o arquivo page.php para exibir a categoria selecionada.
Para fazer isso, voltaremos à função que criamos para preencher uma terceira guia do WooCommerce com artigos da Base de Conhecimento em meu post anterior. Você pode reutilizar isso aqui. Apenas echo a função em page.php no tema filho para exibir a categoria selecionada de artigos para qualquer página.
Seu código page.php deve se parecer com:
<?php get_header(); ?>
<div id="primary" class="content-area">
<main id="main" class="site-main" role="main">
<?php
//loop start
while ( have_posts() ) : the_post();
//include the page content template.
get_template_part( 'template-parts/content', 'page' );
//check and load the woo_knowledge_base_content
if( function_exists( 'woo_knowledge_base_content' ) ){
echo woo_knowledge_base_content();
} else {
echo 'function woo_knowledge_base_content() missing';
}
//load comment template
if ( comments_open() || get_comments_number() ) {
comments_template();
} //loop end
endwhile;
?>
</main><!-- .site-main -->
<?php get_sidebar( 'content-bottom' ); ?>
</div> <!-- .content-area -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>A única linha alterada é
echo woo_knowledge_base_content();
Sua página agora deve incluir a categoria selecionada de artigos da base de conhecimento e deve ser algo como:

Com isso, você deve ter exibido com sucesso os artigos da sua base de conhecimento dentro da Área de Membros do seu site.
Alguns plugins gratuitos para restringir o conteúdo em um site WordPress
Se você não quiser codificar, considere instalar um dos seguintes plugins. Todos eles podem ajudá-lo a proteger seu conteúdo de usuários não registrados.
Pro de assinaturas pagas
Com o Paid Memberships Pro, você pode garantir que apenas seus membros tenham acesso aos diferentes componentes do seu site, como páginas, postagens, categorias, fóruns, downloads, conteúdo de suporte e muito mais.
s2Membro
s2Member é outro plugin WordPress leve que permite restrição de conteúdo. Usando o s2Member, você pode restringir o acesso às suas postagens, páginas, categorias, tags, arquivos para download, fóruns e outros arquivos apenas para seus usuários registrados.
Associação simples
O Simple Membership vem com um painel amigável que permite proteger seu conteúdo exclusivo para membros, como postagens, páginas, galerias de fotos, anexos e muito mais dos visitantes gerais do site.
Além disso, você também pode conferir WP-Members e Membership & Content Restriction – Paid Member Subscriptions. Mesmo esses plugins ajudam a bloquear conteúdo premium, permitindo acesso apenas a usuários registrados.
Embrulhando-o…
Dependendo de seus objetivos, você pode precisar de qualquer coisa entre recursos básicos e avançados de restrição de conteúdo. Mas agora você sabe como implementar uma Área de Membros simples. Você até conhece os melhores plugins para escolher.
Então experimente o código ou os plugins e compartilhe suas experiências abaixo.
