Abbiamo cercato come creare un semplice sistema CRM in WordPress. Nell'ultima parte di questa serie, abbiamo aggiunto il codice al nostro plug-in che ci ha consentito di cercare i nostri contatti in base ai dati memorizzati nei campi personalizzati avanzati.
Oggi parleremo di come limitare l'accesso alle voci del menu di amministrazione di WordPress.
WordPress utilizza il concetto di ruoli, in cui un ruolo può essere assegnato a un utente WordPress. Questo ruolo definisce ciò che l'utente può e non può fare.
Di default, WordPress ha sei ruoli:
Le autorizzazioni a cui è stato assegnato un ruolo sono Capabilities e WordPress offre molte funzionalità diverse (ad esempio, install_plugins
, update_themes
, edit_pages
, eccetera). Se sei interessato a visualizzare l'elenco completo delle funzionalità in base al ruolo, consulta questa pagina del codice WordPress.
Quando abbiamo registrato il nostro tipo di post personalizzato Contatti nella parte 1 di questa serie, abbiamo definito il capability_type
essere inviare
. Ciò significa che le funzionalità di lettura, modifica ed eliminazione per i Contatti sono le stesse utilizzate per i Post. A seconda del ruolo dell'utente, questo fornisce all'utente il seguente accesso ai nostri contatti. Tipo di messaggio personalizzato:
Capacità | Super Admin | Amministratore | editore | Autore | Collaboratore | abbonato |
---|---|---|---|---|---|---|
edit_others_posts | sì | sì | sì | |||
delete_others_posts | sì | sì | sì | |||
delete_private_posts | sì | sì | sì | |||
edit_private_posts | sì | sì | sì | |||
read_private_posts | sì | sì | sì | |||
edit_published_posts | sì | sì | sì | sì | ||
publish_posts | sì | sì | sì | sì | ||
delete_published_posts | sì | sì | sì | sì | ||
edit_posts | sì | sì | sì | sì | sì | |
delete_posts | sì | sì | sì | sì | sì |
Sulla base delle funzionalità di cui sopra, se vogliamo che gli utenti siano in grado di aggiungere, modificare ed eliminare tutti i contatti (inclusi i contatti creati da altri utenti), dovremmo utilizzare il ruolo Editor. Andiamo avanti e creiamo un nuovo utente WordPress con quel ruolo:
Ora usciamo da WordPress e accedi come nostro nuovo editor. Vedrai che il menu di amministrazione di WordPress ha un minor numero di opzioni e include i nostri contatti Tipo di messaggio personalizzato:
Tuttavia, puoi solo consentire agli utenti di visualizzare i contatti di altri utenti senza la possibilità di modificarli o eliminarli. Possiamo ottenere questo risultato utilizzando il ruolo Autore, poiché questo ruolo non ha edit_others_posts
o delete_others_posts
Funzionalità (fare riferimento alla tabella sopra).
Crea il tuo utente WordPress nello stesso modo in cui lo facevamo per un editor, questa volta scegliendo il ruolo di autore.
L'accesso come autore mostrerà di nuovo un minor numero di opzioni del menu di amministrazione di WordPress:
Quando visualizziamo i nostri contatti, vedremo tutti gli altri contatti creati da altri utenti di WordPress, tuttavia, non siamo in grado di modificarli o eliminarli:
Vai avanti e aggiungi un nuovo contatto. Una volta fatto, clicca su Tutti i contatti nel menu di amministrazione di WordPress. Invece di vedere tutti i contatti creati da altri utenti di WordPress, ora vedrai i contatti che hai creato, che puoi modificare ed eliminare:
Possiamo ancora visualizzare i contatti degli altri utenti facendo clic su Tutti opzione sopra la tabella WordPress:
Nel prossimo articolo, limiteremo ulteriormente la funzionalità di amministrazione di WordPress agli utenti selezionati, consentendo loro di accedere solo al CRM dei contatti.