Se state costruendo un sito WordPress per i clienti, o qualsiasi tipo di sito che avrà più utenti (o entrambi!), avete bisogno di un modo infallibile per controllare i permessi esatti che ogni utente ha sul sito.
Per esempio, probabilmente non volete dare a un utente normale l’accesso per installare plugin, e dubito che vogliate permettere a un cliente non tecnico di modificare direttamente i file del tema.
Ecco perché è importante controllare esattamente cosa hanno i diversi utenti e quali azioni possono fare. WordPress include un sistema di ruoli e capacità degli utenti.
In questo post, per prima cosa definirò questi termini e passerò attraverso i ruoli e le capacità di default per ogni sito WordPress. Poi, vi mostrerò come potete modificare questi ruoli predefiniti o creare i vostri ruoli con capacità personalizzate per un maggiore controllo sul vostro sito.
Cosa sono i ruoli e le capacità di WordPress?
Definiamo i ruoli e le capacità degli utenti.
Una capacità è un’azione specifica che un utente può compiere. Questi sono tutti esempi di capacità individuali:
- Pubblica un post
- Visualizza un post privato
- Modifica un post
- Attiva un plugin
- Installa un tema
- Moderna i commenti
Di default, WordPress include 62 diverse capacità che coprono tutte le funzionalità principali di WordPress.
Un ruolo, d’altra parte, è un insieme di capacità che è possibile assegnare a un account utente effettivo.
Si può vedere come una sorta di gerarchia:
Ad ogni account utente viene assegnato un ruolo che definisce un insieme di capacità consentite.
I ruoli e le capacità predefinite degli utenti di WordPress
Di default, le installazioni regolari di WordPress includono cinque ruoli predefiniti:
- Ruolo amministratore
- Ruolo editore
- Ruolo autore
- Ruolo collaboratore
- Ruolo sottoscrittore
C’è anche un sesto ruolo utente – il ruolo Super Admin – che si applica solo alle installazioni WordPress Multisito.
Inoltre, WordPress include le suddette 62 capacità predefinite per coprire tutte le funzioni principali di WordPress.
Si può vedere l’elenco completo delle capacità predefinite, e a quali ruoli sono assegnate, nella tabella Capability vs. Role di WordPress Codex Role Table:
Il vostro sito potrebbe avere più ruoli e capacità
Oltre a questi default, alcuni plugin creano anche i propri ruoli e/o capacità.
Per esempio, WooCommerce aggiunge ruoli utente per:
- Shop Manager
- Cliente
Come pure una serie di capacità associate per gestire prodotti, ordini, ecc.
Altri plugin che aggiungono funzionalità dettagliate avranno probabilmente le loro capacità e, potenzialmente, i loro ruoli.
Come impostare il ruolo di un utente sul vostro sito WordPress
Per modificare il ruolo di un utente, cliccate sulla scheda Utenti nella vostra dashboard e modificate l’utente a cui volete destinarlo.
Poi, scorri verso il basso fino al menu a tendina Ruolo e seleziona il ruolo utente che vuoi applicare a quell’utente:
Se permetti la registrazione pubblica, puoi anche cambiare il ruolo predefinito che viene applicato ai nuovi utenti del tuo sito andando su Impostazioni → Generale:
Come creare ruoli WordPress e/o modificare capacità
Ora che sapete cosa sono i ruoli e le capacità, vediamo come potete effettivamente iniziare a manipolare ruoli e capacità per creare i vostri permessi di accesso utente personalizzati.
Come avviene in WordPress, potete farlo sia usando un plugin che con il vostro codice personalizzato.
Inizierò con il metodo del plugin perché è un po’ più accessibile e flessibile, ma vi mostrerò anche come funziona il codice più avanti.
Usare User Role Editor per gestire ruoli e capacità
User Role Editor è un popolare plugin gratuito che fornisce un’interfaccia grafica per:
- Creare nuovi ruoli e ruoli utente personalizzati
- Modificare le capacità associate a qualsiasi ruolo (compresi i ruoli predefiniti di WordPress)
Il plugin consente anche di assegnare più ruoli utente a un singolo utente, così come assegnare capacità a specifici account utente, che apre alcuni usi interessanti.
Una volta installato e attivato il plugin, ecco come usarlo effettivamente:
Passo 1: Seleziona il ruolo che vuoi modificare (o creane uno tuo)
Per accedere all’interfaccia del plugin, vai su Utenti → Editor dei ruoli utente.
Lì è possibile:
- Selezionare un ruolo esistente dal menu a tendina in alto
- Creare un nuovo ruolo cliccando il pulsante Add Role sulla destra
Se si sceglie di creare il proprio ruolo, è necessario dargli un:
- Nome del ruolo (ID): tutto minuscolo senza spazi o numeri.
- Nome del ruolo visualizzato: può usare un testo normale. Questo è ciò che apparirà nel menu a tendina del ruolo quando si modifica un utente.
Si può anche scegliere opzionalmente di fare una copia delle capacità di un ruolo esistente. Se scegli Nessuno, il tuo nuovo ruolo non avrà alcuna capacità per iniziare.
Passo 2: aggiungere o rimuovere le capacità per il ruolo
Una volta selezionato il ruolo che vuoi modificare, basta usare la lista di caselle di controllo per assegnare le capacità a cui vuoi che quel ruolo abbia accesso.
Alcuni suggerimenti per utilizzare questa interfaccia in modo più efficace sono:
- Mostrare le capacità in forma leggibile rende un po’ più semplice vedere cosa fa effettivamente ogni capacità.
- Le opzioni di gruppo sul lato sinistro consentono di passare rapidamente a capacità specifiche. Se i tuoi plugin hanno aggiunto delle capacità, vedrai anche ogni plugin come un gruppo unico.
- Concedere solo permette di filtrare solo le capacità a cui un ruolo ha effettivamente accesso.
Quando hai finito, assicurati di premere Update.
Due altre utili funzioni dell’Editor dei ruoli utente
Oltre alla gestione dei ruoli utente e delle capacità di base, l’Editor dei ruoli utente include anche altre due utili funzioni a cui si può accedere quando si modifica il profilo di un utente.
È possibile:
- Assegnare più ruoli a un singolo account utente
- Modificare le capacità su base utente. Questo ti permette di controllare a cosa ha accesso un utente specifico senza la necessità di creare un ruolo speciale solo per quell’utente.
La seconda caratteristica è particolarmente utile perché rende il sistema di permessi utente di WordPress più simile a quello di Drupal (un CMS che è solitamente considerato avere un sistema di permessi utente più flessibile).
Usare il codice per gestire i ruoli e le capacità
È anche abbastanza semplice, anche se un po’ meno user-friendly, usare i propri snippet di codice per aggiungere nuovi ruoli. Questo è il vostro capability manager.
Per farlo, dovete:
- Registrare e aggiungere un nuovo ruolo usando la funzione add_role
- Definire le capacità assegnate a quel ruolo usando un array
Mi piace farlo usando un plugin come Code Snippets perché mantiene tutto pulito, ma potete anche usare il file functions.php del vostro tema figlio.
Ecco come appare per un ruolo chiamato Esempio:
$result = add_role( 'example', __( 'Example' ), array( 'edit_posts' => true, // lets users edit their own posts 'edit_pages' => true, // lets users edit pages ) );
Se non si definisce una capacità nell’array, dovrebbe essere predefinito a false. Ma tuttavia, vedrete ancora alcuni sviluppatori impostare esplicitamente le capacità come false.
Una volta salvato il vostro snippet, sarete in grado di assegnare il nuovo ruolo ai vostri utenti:
Consigli utili su come usare i ruoli e le capacità di WordPress
A questo punto, dovreste avere un’idea abbastanza buona di come creare nuovi ruoli utente e manipolare i ruoli/le capacità degli utenti sul vostro sito WordPress.
Ma forse vi starete ancora chiedendo: “come fa questa conoscenza ad aiutarmi a costruire un sito WordPress migliore?”
A tal fine, voglio lasciarvi con alcuni suggerimenti utili.
Creare un ruolo personalizzato per il vostro cliente (per i siti client)
Se state costruendo siti WordPress per i clienti, dovreste imparare ad amare ruoli e capacità.
E’ probabile che vogliate che il vostro cliente abbia più capacità del ruolo Editor di default, ma meno capacità di un amministratore completo (ruolo di amministratore di WordPress).
Per fare ciò, create una copia del ruolo Administrator ma rimuovete le capacità con cui il vostro cliente potrebbe…rompere qualcosa.
Per esempio, le capacità relative a:
- Plugins
- Modifica del codice
- Temi
Non ci sono regole rigide qui – scegliete quello che meglio si adatta alla vostra situazione e al livello di conoscenza del vostro cliente.
Consentire ad alcuni utenti l’accesso a contenuti privati
WordPress include funzionalità di base per rendere privati post, pagine e tipi di post personalizzati. Ma, per impostazione predefinita, solo gli amministratori e i redattori possono vedere il contenuto privato.
Giocando con le funzionalità per:
- leggere_post_privati
- leggere_pagine_private
- leggere_privati_prodotti (nei negozi WooCommerce)
È possibile creare contenuti privati leggeri senza il bisogno di un plugin.
Ottieni più controllo sui blog multi-autore
Se stai gestendo un blog multi-autore, probabilmente vorrai dare agli utenti il ruolo di Editor in modo che possano aiutare con i post scritti da altri utenti. Ma, per impostazione predefinita, gli editor possono gestire le pagine oltre ai post.
Potresti non volerlo, ecco perché può essere utile creare un ruolo di editor più limitato che abbia solo le capacità di lavorare con i post regolari.
Concludendo i ruoli e le capacità di WordPress
I ruoli e le capacità di WordPress sono una parte importante di ciò che rende WordPress un vero e proprio sistema di gestione dei contenuti, piuttosto che un sistema di blogging come ai vecchi tempi.
Come proprietario del sito, non appena padroneggiate i ruoli e le capacità, avrete un controllo preciso su ciò a cui i vostri clienti o utenti hanno accesso. E questo significa un sito WordPress più sicuro e ben funzionante!
Se questo vi sembra troppo complicato, il team di GoWP può occuparsi della gestione dei ruoli e delle funzionalità dei vostri utenti WordPress con il piano Unlimited Content Edits!
0 commenti