break

Modificare i ruoli degli utenti WordPress

wordpress1 Modificare i ruoli degli utenti Wordpress

Uno dei limiti di WordPress sta nella gestione dei ruoli da assegnare agli utenti. Ne presenta 5 di predefiniti e a volte questi non bastano:

  • Subscriber
  • Contributor
  • Author
  • Editor
  • Administrator

Esistono diversi plugin che permettono di aggiungere queste funzionalità, ma spesso la via migliore è intervenire direttamente e in maniera mirata senza complicarsi la vita, con nuovo codice, nuovi plugin da aggiornare e problemini vari di compatibilità.

Su tutti mi è capitato il caso in cui volevo dare ad un utente il ruolo di CONTRIBUTOR, cioè dargli la possibilità di scrivere articoli, e di inviarli per revisione invece di pubblicarli direttamente. Ma a quel livello l’utente non può caricare files, quindi non poteva aggiungere immagini al testo. Dovevo intervenire manualmente caricando il file al suo posto. Bisognava abilitare anche gli utenti contributor a caricare files.

Ecco la soluzione. Possiamo intervenire direttamente nel codice per modificare i ruoli esistenti o crearne di nuovi. Per oggi vediamo la modifica. Si interviene sempre nel file functions.php presente nella cartella del template che utilizziamo, in modo tale da non toccare il core e all’aggiornamento del CMS le modifiche verranno mantenute.

Aprire il file functions.php del template in uso e aggiungere le righe seguenti:

<?php

function add_role_caps() {

global $wp_roles;

$role = get_role(‘contributor’);

$role->add_cap(‘upload_files’);

};

add_action (‘admin_head’,'add_role_caps’);

?>

Allo stesso modo possiamo intervenire per aggiungere altri permessi, anche ad altri ruoli, scegliendo fra le capabilities di WordPress.

2 Responses

  1. Notizie dai blog su Modificare il nome utente “ADMIN” su Wordpress Says:

    [...] dei limiti di WordPress sta nella gestione dei ruoli da assegnare agli utenti. blog: WebEpoque | leggi l'articolo Per help e visualizzare le immagini abilitare javascript. Scrivi un commento [...]

  2. Nerdo Says:

    ma non bastava usare l’author?

Subscribe without commenting

Leave a Comment