Plugin FAQ Guide Blog Assistenza Contatti Vedi i plugin

Come limitare i contenuti per ruolo utente in WordPress

Content GateAggiornato il 30 settembre 20267 min di lettura

Content Gate

Per limitare i contenuti per ruolo utente in WordPress assegni a ogni gruppo di persone un suo ruolo (per esempio Cliente, Rivenditore o Personale) e poi aggiungi una regola, di solito con un plugin, che stabilisce quali ruoli possono aprire quali pagine. WordPress da solo non ha un'impostazione del tipo «solo questo ruolo vede questa pagina»: le opzioni integrate sono le pagine private, che possono leggere solo amministratori ed editori, e la protezione con password, che funziona con un'unica password condivisa.

Questa guida spiega cosa sono i ruoli, cosa può e non può fare WordPress senza plugin, le opzioni realistiche con pro e contro, e un esempio passo per passo che puoi seguire sul tuo sito.

Cos'è un ruolo utente in WordPress

Ogni account di un sito WordPress ha un ruolo. Il ruolo decide cosa può fare la persona nell'area di amministrazione: scrivere articoli, pubblicarli, modificare il lavoro degli altri, installare plugin. WordPress include questi ruoli, descritti nella documentazione ufficiale Roles and Capabilities (in inglese):

RuoloCosa può fare
AmministratoreTutto su un sito singolo: impostazioni, plugin, temi, utenti.
EditorePubblicare e gestire articoli e pagine, compresi quelli degli altri utenti.
AutorePubblicare e gestire i propri articoli.
ContributoreScrivere i propri articoli ma non pubblicarli.
SottoscrittoreSolo gestire il proprio profilo.

Un sesto ruolo, Super Admin, esiste solo in una rete multisito. Altri plugin aggiungono ruoli propri: WooCommerce, per esempio, assegna a chi compra nel negozio il ruolo Cliente. Il ruolo che riceve un nuovo account si imposta in Impostazioni > Generali, alla voce Ruolo predefinito nuovi utenti.

Il punto chiave: i ruoli controllano l'area di amministrazione, non le pagine pubbliche. Un Sottoscrittore che ha fatto accesso vede esattamente la stessa pagina pubblica di un visitatore senza account. Per mostrare una pagina solo ad alcuni ruoli ti serve qualcosa che controlli il ruolo prima che la pagina venga inviata.

Cosa può fare WordPress senza plugin

Nell'editor, l'impostazione di visibilità di una pagina o di un articolo offre tre scelte (vedi la documentazione Content Visibility, in inglese):

  • Pubblico: lo vedono tutti.
  • Privato: nascosto al pubblico e agli elenchi di articoli. Possono aprirlo solo gli utenti con il permesso di leggere i contenuti privati, cioè di default Amministratori ed Editori.
  • Protetto da password: i visitatori vedono il titolo e un campo password. Chiunque digiti la password vede il contenuto.

Nessuna delle due è una limitazione per ruolo. Rendere Editori i tuoi rivenditori solo perché leggano una pagina privata permetterebbe loro anche di modificare e pubblicare contenuti sul tuo sito: un pessimo scambio. Una password funziona per una pagina condivisa per poco tempo, ma tutti usano la stessa password, non sai chi l'ha usata e non puoi togliere l'accesso a una persona senza cambiarla per tutti.

I modi per limitare i contenuti per ruolo utente

Una volta chiarito che WordPress da solo non basta, hai quattro strade realistiche. Quella giusta dipende da cos'altro ti serve.

OpzioneAdatta aAttenzione a
Un plugin di gestione ruoli con permessi sui contenuti (per esempio il plugin gratuito Members)Creare ruoli personalizzati e scegliere, contenuto per contenuto, quali ruoli possono leggerlo.Imposti l'accesso pagina per pagina. Verifica come gestisce elenchi, ricerca e cosa vedono i visitatori bloccati.
Un plugin di membership completo (Paid Memberships Pro, MemberPress e simili)Vendere l'accesso: livelli, pagamenti, rinnovi, moduli di iscrizione.Molta più configurazione del necessario se nessuno paga e conosci già i tuoi utenti.
Un plugin di restrizione dei contenuti come Content GateRegole per ruolo su pagine, tipi di contenuto, categorie, singoli blocchi e widget, con un messaggio, un reindirizzamento o un'altra pagina per tutti gli altri.Le condizioni per ruolo sono una funzione Pro. Non crea ruoli.
Codice personalizzato nel temaUno sviluppatore che vuole il controllo totale su un template.Richiede manutenzione ed è facile sbagliare quando cambia il tema.

Qualunque cosa scegli, prima vengono i ruoli. Se i ruoli predefiniti non descrivono i tuoi gruppi, creane di nuovi con un editor di ruoli come i plugin Members o User Role Editor, entrambi gratuiti su WordPress.org. Una buona abitudine è copiare il ruolo Sottoscrittore e rinominarlo (Rivenditore, Distributore, Personale): il nuovo ruolo non riceve poteri in più nell'area di amministrazione, solo un'etichetta che le tue regole possono controllare.

Passo per passo: riservare una pagina a un ruolo

Questo esempio usa Content Gate e segue le sue guide. L'obiettivo: una pagina listino che possono aprire solo gli utenti con il ruolo Rivenditore, mentre tutti gli altri leggono un breve messaggio.

1. Crea il ruolo e assegnalo

  1. Crea un ruolo Rivenditore con il tuo plugin editor di ruoli, come descritto sopra.
  2. Per una persona nuova, vai su Utenti > Aggiungi utente, compila nome utente ed email, scegli Rivenditore in Ruolo e clicca Aggiungi utente. Spunta Invia notifica all'utente se deve ricevere un'email sul suo account.
  3. Per un account esistente, aprilo da Utenti, cambia il Ruolo e salva.

2. Trova l'ID della pagina

Apri in modifica la pagina del listino e guarda la barra degli indirizzi: in post.php?post=12&action=edit l'ID è 12.

3. Scrivi la regola

  1. Vai su Content Gate > Regole e clicca Aggiungi regola (oppure Scrivi la prima regola se l'elenco è vuoto).
  2. 1 Dalle un nome: un nome che vedrai solo tu, per esempio Listino, solo rivenditori.
  3. 2 Chi può vedere: scegli Solo alcuni ruoli e spunta Rivenditore. Scegli il gruppo che mantiene l'accesso, non quello che vuoi bloccare.
  4. 3 Cosa copre: scrivi 12 in Singoli contenuti, per identificativo.
  5. 4 Cosa ricevono gli altri: scegli Un messaggio al posto del contenuto e scrivi qualcosa di utile, per esempio come richiedere un account da rivenditore.
  6. Controlla che Questa regola è accesa sia spuntato e clicca Salva regola.
Editor delle regole di Content Gate con l'opzione Only certain roles selezionata, i ruoli Reseller e Distributor spuntati e due ID di pagina inseriti nel campo Single items, by ID
L'editor delle regole: spunta i ruoli che mantengono l'accesso, poi scegli cosa copre la regola.

4. Controlla come visitatore

Gli amministratori vedono sempre tutto, quindi dal tuo account non cambia nulla. Apri la pagina in una finestra privata del browser, poi accedi lì con un account di prova con il ruolo Rivenditore e con uno senza. La procedura completa è in Scrivi la tua prima regola.

Eccezioni, parti di pagina ed elenchi

I siti reali raramente si fermano a una pagina. Tre situazioni si ripetono di continuo.

Più regole sullo stesso contenuto

Content Gate legge le regole dall'alto verso il basso, e decide la prima regola che copre una pagina. Metti le regole specifiche sopra quelle generali: una regola «pagina 42 per i Rivenditori» deve stare sopra «tutti i Prodotti per chiunque abbia un account», altrimenti la regola generale fa entrare ogni cliente. L'ordine e tutte le opzioni sono spiegati in Come funzionano le regole.

Solo una parte della pagina

Spesso la pagina può restare pubblica e solo i prezzi sono riservati. Con la Pro, ogni blocco dell'editor a blocchi ha un pannello Visibilità: attiva Proteggi questo blocco e scegli Solo alcuni ruoli. Per tutti gli altri il blocco viene tolto sul server, non solo nascosto. Negli altri page builder racchiudi il testo nello shortcode, per esempio [content_gate who="roles" roles="rivenditore"]Prezzi netti...[/content_gate], usando il nome interno del ruolo in minuscolo. I dettagli sono in Proteggi un singolo blocco.

Titoli negli elenchi e nella ricerca

Bloccare una pagina non toglie il suo titolo dagli elenchi del blog, dalle pagine di categoria o dalla ricerca interna. Se anche il titolo è riservato, spunta le opzioni del passaggio 5 Fuori dalla pagina (Pro), che tengono il contenuto fuori anche dall'API REST.

Cosa non proteggono le restrizioni per ruolo

  • I file caricati. Un PDF o un'immagine nella libreria media mantiene il proprio indirizzo diretto. Nascondere la pagina che lo collega non chiude quell'indirizzo, e nessun plugin può chiuderlo dall'interno di WordPress. Per i documenti riservati usa invece un portale di file: vedi come creare un'area riservata clienti con Dropbox.
  • Chi condivide le proprie credenziali. Una restrizione per ruolo si fida dell'account. Dai a ogni persona il suo account, così puoi togliere l'accesso a una sola di loro.
  • La tua vista. Come amministratore vedi tutto. Fai sempre le prove da una finestra privata o con un account di prova.

La cache di pagina raramente crea problemi alle regole per ruolo, perché i plugin di cache di solito servono le copie salvate solo ai visitatori che non hanno fatto accesso. Se una regola sembra non fare nulla, svuota la cache e controlla che la regola sia Accesa e non segnata come oltre il limite gratuito.

Quale opzione fa per te

Se si tratta di una sola pagina e l'accesso è temporaneo, basta una pagina protetta da password. Se vendi l'accesso con pagamenti e rinnovi, un plugin di membership è fatto apposta. Se ti servono ruoli personalizzati e non ti pesa impostare l'accesso contenuto per contenuto, un gestore di ruoli con permessi sui contenuti è una buona scelta gratuita.

Se vuoi limitare i contenuti per ruolo utente su tutto il sito, con regole chiare, eccezioni, singoli blocchi e un messaggio o un reindirizzamento adeguato per tutti gli altri, Content Gate raccoglie tutto in un modulo breve. La versione gratuita copre già una semplice area per chi ha fatto accesso (vedi come creare un'area riservata); i ruoli fanno parte della Pro, la cui licenza Business costa €29,90 / anno per 1 sito, IVA inclusa.

Domande frequenti

Posso riservare una pagina a un ruolo utente senza plugin?

Non con le impostazioni standard. Le pagine private sono leggibili solo da amministratori ed editori, e la protezione con password usa una sola password per tutti. Per mostrare una pagina a un ruolo specifico serve un plugin o codice personalizzato nel tema.

Come si crea un ruolo utente personalizzato in WordPress?

WordPress non ha una schermata per creare ruoli. Installa un editor di ruoli come Members o User Role Editor, crea il nuovo ruolo (copiare Sottoscrittore è un punto di partenza sicuro) e poi assegnalo agli utenti dalla schermata Utenti.

Un Sottoscrittore vede più cose di un visitatore senza account?

Nelle pagine pubbliche, no. Un Sottoscrittore può solo gestire il proprio profilo nell'area di amministrazione. Vede contenuti in più solo quando un plugin o il tema controllano il suo ruolo o il suo accesso.

I file della libreria media sono protetti quando limito una pagina?

No. I file caricati nella libreria media mantengono un indirizzo diretto che funziona per chiunque lo abbia. Tieni i file riservati fuori dalla libreria media, per esempio in una cartella privata di Dropbox o Google Drive condivisa tramite un portale.