<

Permessi

Ultima modifica: 12 Dicembre 2024

Nel wordpress Gpci framework il modulo permessi serve a consentire la gestione dei permessi a livello di blocco e pagina singola oltre che alla creazione di ruoli e capacità personalizzate da verificare nei contesti suddetti e in funzioni personalizzate. Questo modulo non sarà probabilmente quasi mai utilizzato in un sito semplice ma è molto utile in un gestionale o un sito con contenuto specifico per condizioni personalizzate.

Abilitazioni iniziali

Appena abilitato il modulo selezionare i post types a cui si vuole applicare la possibilità di modificare i permessi livello di pagina singola. Abilitare anche lo switch per la visibilità pagine: notare che al momento lo switch è ridondante con i post types in quanto in futuro probabilmente verranno aggiunte altre metabox. Per i momento abilitarlo sempre se almeno un post type è selezionato.

Pagina impostazioni

Appena abilitato il modulo verrà aggiunta alla sezione gpci la pagina Ruoli in cui è possibile configurare i ruoli e le capacità. Notare che le tutte modifiche saranno salvate solo dopo l'invio con il classico pulsante di salvataggio a fondo pagina.

Metabox ruoli correnti

In questa metabox sono raggruppate le opzioni per configurare i ruoli correnti del sito:

Nascondi ruoli

Spuntare le checkbox relative i ruoli che si vuole nascondere da questa pagina e dalle pagine utenti. I ruoli verranno solo nascosti ma mai cancellati. In questa parte compaiono solo i ruoli default, quindi:

  • amministratore
  • editore
  • autore
  • contributore
  • sottoscrittore

Sblocca ruoli wordpress

Se attivato lo switch sarà possibile modificare i ruoli wordpress predefiniti.

Elenco ruoli

Per ogni ruolo è presente una tabella con cui è possibile attivare o disattivare le capacità del sito, potrebbe quindi essere utile dare una lettura a come funzionano i ruoli e le capacità in wordpress. Escluso l'utente amministratore (che ha sempre accesso a tutto) è possibile selezionare altre opzioni:

Rinomina in

Inserire il nuovo nome ruolo, lo slug non verrà modificato.

Elimina

Per preparare l'eliminazione del ruolo corrispondente: spuntare la checkbox (o cliccare sulla label elimina). I ruoli default di wordpress non hanno questa opzione.

Disabilita admin bar

Se attivato lo switch: la admin bar superiore sarà disattivata per il ruolo corrispondente.

Disabilita gutenberg

Disabilita gutenberg per il ruolo corrispondente che, se ha la capacità di creare o modificare contenuti, utilizzerà l'editor classico.

Disabilita backend

Se attivato lo switch: il ruolo non avrà accesso al backend ma verrà restituito un 404 se prova ad accedervi. Da notare alcune cose:

  • per caricare immagini in un form metabox submission situato in una pagina creata da un utente diverso dal compilatore senza la capacità edit_other_pages (sarà la quasi totalità dei casi) attivare la capacità mb_frontend_upload_media_on_pages
  • per cancellare le immagini seguire la stessa logica ma con le proprietà delete_media_on_pages
  • sarebbe meglio disattivare anche le capacità relative al backend che non si vuole concedere al ruolo per evitare violaszioni da parte di utenti, non affidarsi solo a questa opzione
Redireziona su login

Impostare l'url relativo al quale si vuole che l'utente sia redirezionato appena eseguito il login.

Limita libreria media

Se attivato lo switch: limita la visibilità dei media in libreria a quelli dello stesso ruolo.

Assegna tutte le capacità

Cliccare sul pulsante per abilitare tutte le checkbox.

Rimuovi tutte le capacità

Cliccare sul pulsante per disabilitare tutte le checkbox.

Tabella capacità

Questa tabella contiene per ogni ruolo tutte le capacità del sito, è possibile abilitare o disabilitare ogni capacità con la checkbox corrispondente.

Metabox aggiungi nuovo ruolo

In questa metabox è possibile creare nuovi ruoli, è possibile creare più ruoli insieme aggiungendo con il pulsante dedicato (saranno creati solo dopo il salvataggio pagina). Ogni ruolo è definito con:

Slug

Inserire lo slug del nuovo ruolo, lo slug è composto da lettere minuscole, numeri e trattini medi.

Nome

Inserire il nome del nuovo ruolo, ossia quello che verrà visualizzato.

Clona da

Selezionare un ruolo esistente per clonare le capacità iniziali invece che configurarle una ad una. Sarà sempre possibile modificarle dalla tabella dedicata.

Metabox capacità aggiuntive

In questa metabox è possibile creare nuove capacità, che sarà poi possibile abilitare per ogni ruolo in tabella. A quel punto sarà possibile controllarle con la conversione dinamica o con funzioni personalizzate. Prima di creare le capacità è presente uno switch:

Genera capacità per i post types custom

Questo switch serve se ci sono post types personalizzati con l'opzione capability_type settata a custom; se abilitato: durante la creazione della capacità verranno automaticamente create anche altre capacità rilevanti con la seguente struttura:

  • edit_{Singular name}
  • read_{Singular name}
  • delete_{Singular name}
  • edit_{Plural name}
  • edit_others_{Plural name}
  • delete_{Plural name}
  • publish_{Plural name}
  • read_private_{Plural name}
  • delete_private_{Plural name}
  • delete_published_{Plural name}
  • delete_others_{Plural name}
  • edit_private_{Plural name}
  • edit_published_{Plural name}
  • edit_{Plural name}

Ora preparare una o più la capacità definendo:

Slug

Inserire lo slug della capacità, usare lettere, numeri e underscore.

E' possibile aiutarsi ad esempio con:

print_rR( $ GLOBALS['wp_post_types']['custom-post-type-slug'] )

Permessi pagina singola

Se nella configurazione del modulo il post type corrente è selezionato e lo switch visibilità pagine è attivato sarà possibile visualizzare le opzioni per i permessi di visibilità della pagina corrente che rispecchiano la stessa logica dei controlli condizioni di rendering utilizzando la conversione dinamica.

Documentazione rilevante aggiuntiva