Limitare l’accesso al backend di WordPress: ruoli e codice

Limitare l’accesso al backend di WordPress: ruoli e codice

Immagina di essere il proprietario di un palazzo e di volere che solo poche persone abbiano le chiavi, senza per questo dare loro accesso a ogni angolo dell’edificio. Ora immagina che quel palazzo sia il tuo sito WordPress, e che tu non voglia lasciarlo aperto a tutti. Con la bacheca, qualche riga di codice e alcuni plugin WordPress puoi limitare senza fatica l’accesso alla tua bacheca. Vediamo come fare.

Perché limitare l’accesso alla bacheca?

Probabilmente non hai niente in contrario a che qualcuno entri nella bacheca di WordPress. Ma può darsi che tu non voglia darne l’accesso proprio a tutti, o che tu preferisca impedire la modifica del tema e dei plugin.

In un altro scenario, se gestisci un blog con più autori, può servirti limitare quello che i tuoi autori possono fare. In ogni caso, prima o poi diventa necessario controllare chi ha accesso a cosa.

Vediamo allora come limitare l’accesso alla bacheca.

Ruoli e permessi per controllare l’accesso

WordPress ti semplifica il lavoro definendo ruoli e azioni in base al tipo di utente: redattori, editori, moderatori e così via. Puoi cambiare il ruolo di un utente in qualsiasi momento e modificare così il suo accesso alla bacheca.

Permettere ai nuovi utenti di gestire il proprio profilo e di leggere i contenuti sul front-end è semplicissimo. Basta assegnare loro il ruolo di sottoscrittore, e lo fai tutto dal pannello di amministrazione di WordPress andando su Impostazioni. Da lì passa a Generali e imposta Ruolo predefinito per i nuovi utenti su Sottoscrittore.

Da Utenti e poi Tutti gli utenti puoi anche cambiare il ruolo di un utente già esistente. Puoi persino selezionare più utenti in una volta e limitarne l’accesso.

In WordPress esistono quattro tipi di ruolo utente:

  • Il sottoscrittore può soltanto leggere gli articoli e gestire il proprio profilo.
  • Il collaboratore può scrivere e gestire i propri articoli, ma non pubblicarli.
  • L’autore può gestire e pubblicare i propri articoli.
  • L’editore può pubblicare e gestire gli articoli di tutti i redattori.
  • L’amministratore o il super amministratore ha accesso completo alle funzioni amministrative del sito. Il super amministratore riguarda le installazioni multisito.

Limitare l’accesso con uno snippet di codice

Il codice qui sotto va incollato nel file functions.php del tuo tema child. Serve a impedire ai tuoi utenti di entrare nel backend del sito: verranno rimandati alla home page.

php
add_action( ‘init’, 'block_users' );

function block_users() {
     if ( 
           is_admin()  
           ! current_user_can( ‘administrator’ ) 
           ! ( defined( ‘DOING_AJAX’ )  DOING_AJAX ) 
     ) {
           wp_redirect( home_url() );
           exit;
     }
}

WordPress

Damien Flandrin Sviluppatore web dal 2010, creatore di Gekkode e di Email Impact. Ogni articolo è testato su un progetto reale prima della pubblicazione. Contatti
Newsletter

I nuovi test, tutorial e progetti, via e-mail.

Test riproducibili, codice versionato, risultati datati. Mai spam.