Limitazione dell'accesso alle pagine di WordPress e creazione di un'area membri

Pubblicato: 2016-02-10

Stai cercando di pubblicare corsi premium o qualche prodotto informativo? Potresti voler limitare il contenuto di WordPress solo a quei lettori/membri che lo pagano. E nascondi i contenuti per i visitatori generici. Con WordPress, puoi facilmente proteggere tali informazioni utilizzando i vari mezzi di restrizione dei contenuti che WordPress supporta immediatamente o con l'aiuto di plug-in.

Esamineremo questi diversi metodi in questo articolo. Discuteremo:

  • La differenza tra le pagine protette da password e quelle private (e dove le due soluzioni non sono sufficienti)
  • Un trucco di 2 minuti per creare una semplice Area membri sul tuo sito WordPress (senza utilizzare un plug-in)
  • Fare in modo che gli articoli della knowledge base vengano visualizzati nell'area membri (questa sezione è per te SE utilizzi il nostro tema KnowAll o la soluzione Heroic Knowledge Base)
  • Plugin gratuiti che ti aiuteranno a controllare l'accesso alle pagine, ai post e ad altri contenuti del tuo sito

Cominciamo col comprendere la differenza tra contenuto protetto da password e contenuto privato.

Crea una base di conoscenza privata - Il modo più semplice!

Costruisci facilmente una knowledge base privata ricercabile con Heroic Knowledge Base.

Ottieni il plug-in

Protetto da password vs. privato

Il modo più semplice per limitare l'accesso a una pagina specifica (o altro contenuto del post) è utilizzare le diverse impostazioni di " Visibilità " fornite da WordPress per impostazione predefinita.

Puoi trovare queste opzioni nel pannello di destra ogni volta che aggiungi una nuova pagina o un post:

Sotto le impostazioni di Visibilità, ci sono 3 opzioni per la visibilità di una pagina (o post):

  1. Pubblico : con questa impostazione predefinita, il contenuto è disponibile per tutti i visitatori del sito
  2. Protetto da password – Qui, solo i lettori con la password della pagina (o del post) possono sbloccare l'accesso al contenuto
  3. Privato : questa opzione garantisce l'accesso a utenti specifici in base al loro ruolo

La seconda e la terza opzione di visibilità ti consentono di limitare determinati contenuti.

Vediamo come:

1. Protezione di pagine/post con password

Questa è un'opzione molto semplice che ti dà la possibilità di proteggere con password singole pagine e post semplicemente assegnando una password a quella pagina (o post).

Chiunque conosca le password può accedere al contenuto.

Ora, questa opzione funziona se hai una o due pagine che desideri nascondere al pubblico in generale. Tuttavia, puoi immaginare che se hai centinaia di articoli da proteggere, dovrai mantenere e distribuire centinaia di password con tutti i lettori idonei.

Un altro problema con questo metodo è che se un utente trova tale contenuto o fa clic su un collegamento a tale pagina protetta da password, vedrà una schermata che richiede una password, quindi saprà che c'è del contenuto protetto o esclusivo sul tuo sito . Quindi, se non vuoi che le persone che non hanno accesso imparino a conoscere questo contenuto, allora questo metodo non risolverà il tuo scopo.

Lo screenshot seguente mostra un esempio di una risorsa protetta da password:

Inoltre, la protezione con password di una pagina non rimuove quella pagina dal sito Web se non si dispone dell'autorizzazione per visualizzarla. Invece, la parola " Protetto: " viene aggiunta all'inizio del titolo, che ha i suoi usi, ma non è l'ideale se non vuoi che le persone sappiano che ci sono contenuti privati ​​sul sito web.

articoli protetti

2) Contrassegnare pagine/post come private

Le pagine private non richiedono password individuali per essere sbloccate. L'accesso a tali pagine viene concesso dopo aver verificato il ruolo di un utente. In genere, solo gli amministratori o gli editori del sito possono visualizzare tali pagine private.

Ecco come appare una pagina contrassegnata come privata:

L'altra grande differenza tra le pagine protette da password e quelle private è che se non si dispone di privilegi sufficienti per visualizzare una pagina, questa non verrà visualizzata sul sito Web da nessuna parte.

Ciò è particolarmente utile se non si desidera che il visitatore medio del sito Web sappia che sono presenti contenuti aggiuntivi sul sito Web.

loggato e non
A sinistra: gli articoli privati ​​sono completamente nascosti se non hai effettuato l'accesso o non disponi delle autorizzazioni corrette. A destra: gli stessi articoli pubblicamente disponibili.

È chiaro:

Delle due opzioni, solo l'impostazione Visibilità privata ha senso se desideri limitare molti contenuti del tuo sito.

Ma come puoi vedere, non puoi assolutamente concedere a tutti gli utenti l'accesso a livello di amministratore o editor sul tuo sito. Ciò significa che devi introdurre un altro livello di abbonamento ( abbonati ). E poi imposta il livello di visibilità delle pagine private su quello degli iscritti. In questo modo, tutti i tuoi iscritti potranno accedere a tutti i contenuti riservati.

Ecco come implementare questo semplice sistema di accesso allestendo un'Area Membri:

Creazione di una semplice Area Membri

Innanzitutto, crea un insieme di pagine che sarà disponibile solo per i membri. Rendi private tutte queste pagine.

Ora, poiché per impostazione predefinita, solo gli utenti con accesso a livello di editor o amministratore possono accedere a queste pagine, dobbiamo rendere questa pagina visibile anche all'utente a livello di abbonato.

Per fare ciò, devi aggiungere una nuova funzione e azione al file functions.php nel tuo tema.

Quindi, vai al file functions.php nel tuo tema e aggiungi il seguente codice:

/**
* 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');
}

Tutto ciò non fa altro che modificare le capacità (autorizzazioni) assegnate al ruolo Abbonato per includere la possibilità di leggere i post privati. Nota che questa è un'azione una tantum, quindi è probabilmente meglio eseguire sull'attivazione del tema/plugin o commentare il codice una volta terminato. Vedi le note di orientamento del Codex su add_cap. Inoltre, se desideri rimuovere la funzionalità, dovrai modificare il codice per utilizzare la funzione remove_cap.

Configurazione del login per l'Area Membri

Ora che la tua Area Membri è pronta, è il momento di rendere più semplice l'accesso per gli iscritti. Ovviamente, i tuoi utenti possono utilizzare il link tuositoweb.com/wp-login.php, ma sarai d'accordo sul fatto che non lo è molto facile da usare.

Per configurare caselle di accesso facili da usare, puoi utilizzare il plug-in styler della pagina di accesso.

Lo styler della pagina di accesso ti consente di progettare pagine di accesso per il tuo sito WordPress. Puoi semplicemente aggiungere un elemento chiamato "Accesso" al tuo menu principale e collegarlo alla pagina di accesso personalizzata progettata con lo styler della pagina di accesso.

Ci sono anche alcuni altri plugin, ma la maggior parte di essi non è stata aggiornata per almeno un anno, quindi assicurati di verificare che siano compatibili prima di usarli.

Una volta che hai reso i tuoi contenuti privati ​​disponibili ai tuoi abbonati tramite una schermata di accesso amichevole, dovresti aver finito.

Nella prossima sezione, vedremo come fare in modo che i tuoi articoli della Knowledge Base (con tecnologia Heroic Knowledge Base) vengano visualizzati nella tua Area Membri.

Fare in modo che l'area membri includa articoli da Heroic Knowledge Base

Se utilizzi il nostro tema KnowAll o il plug-in Heroic Knowledge Base per potenziare la knowledge base del tuo sito Web, puoi rendere i tuoi contenuti di supporto accessibili ai tuoi abbonati direttamente nell'Area membri!

Prima di continuare a leggere, torna al mio precedente articolo in cui ho mostrato come utilizzare il nostro plug-in Heroic Knowledge Base con WooCommerce. Sarà un buon aggiornamento perché, in questa procedura dettagliata, farò riferimento ad alcuni codici e al gruppo di campi personalizzati che abbiamo creato in quel post.

Inizia installando il plug-in Advanced Custom Fields.

In precedenza, avevamo creato un gruppo di campi personalizzato chiamato " Opzioni prodotto ".

Per questo tutorial, sto rinominando "Opzioni prodotto" in " Categorie della Knowledge Base ". La prossima cosa da fare è modificare questo gruppo per includere sia le pagine che i post. Al momento, il campo personalizzato è impostato per essere visualizzato solo se il tipo di post è un prodotto. Ma ora vogliamo essere in grado di applicarlo anche alle pagine.

Per fare ciò, vai su Campi personalizzati nell'amministratore e modifica Opzioni prodotto.

Campi personalizzati

Una volta impostato, crea gli articoli della knowledge base che intendi rendere disponibili solo ai membri paganti. Imposta tutte queste pagine come private in modo che non sia possibile accedervi direttamente. Assegnali a una categoria, ad esempio " Categoria di contenuto con restrizioni ". Successivamente, puoi selezionare questa categoria da visualizzare nelle tue pagine riservate.

modifica della pagina

Il passaggio finale consiste nel modificare il file page.php per visualizzare la categoria selezionata.

Per fare ciò, torneremo alla funzione che abbiamo creato per popolare una terza scheda WooCommerce con articoli della Knowledge Base nel mio post precedente. Puoi riutilizzarlo qui. Basta fare eco alla funzione in page.php nel tema figlio per visualizzare la categoria di articoli selezionata per una determinata pagina.

Il tuo codice page.php dovrebbe assomigliare a:

<?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(); ?>

L'unica riga modificata è

echo woo_knowledge_base_content();

La tua pagina ora dovrebbe includere la categoria selezionata di articoli della knowledge base e dovrebbe assomigliare a:

finale di pagina

Con questo, dovresti aver visualizzato con successo gli articoli dalla tua base di conoscenza all'interno dell'Area membri del tuo sito web.

Alcuni plugin gratuiti per limitare i contenuti su un sito WordPress

Se non vuoi programmare, prendi in considerazione l'installazione di uno dei seguenti plugin. Tutti possono aiutarti a proteggere i tuoi contenuti da utenti non registrati.

Abbonamenti a pagamento Pro

Con Paid Memberships Pro, puoi assicurarti che solo i tuoi membri abbiano accesso ai diversi componenti del tuo sito Web come pagine, post, categorie, forum, download, contenuti di supporto e altro ancora.

s2Membro

s2Member è un altro plug-in WordPress leggero che consente la restrizione dei contenuti. Usando s2Member, puoi limitare l'accesso ai tuoi post, pagine, categorie, tag, file scaricabili, forum e altri file solo ai tuoi utenti registrati.

Iscrizione semplice

Simple Membership viene fornito con una dashboard intuitiva che ti consente di proteggere i contenuti esclusivi dei tuoi membri come post, pagine, gallerie fotografiche, allegati e altro dai visitatori generali del sito.

Oltre a questi, puoi anche dare un'occhiata ai membri WP e all'abbonamento e alle restrizioni sui contenuti - Abbonamenti membri a pagamento. Anche questi plugin ti aiutano a bloccare i contenuti premium consentendo l'accesso agli utenti appena registrati.

Avvolgendolo...

A seconda dei tuoi obiettivi, potresti aver bisogno di qualsiasi cosa tra le funzionalità di limitazione dei contenuti di base e avanzate. Ma ora sai come implementare tu stesso una semplice Area membri. Conosci anche i migliori plugin tra cui scegliere.

Quindi prova il codice o i plugin e condividi le tue esperienze di seguito.