Come creare un ruolo clone in wordpress


25

Come creare un nuovo ruolo con le stesse capacità del ruolo esistente. Ad esempio: vorrei creare un nuovo ruolo con le stesse funzionalità di amministratore o editore e così via.


Che cosa hai provato? Che cosa ha funzionato? Cosa no? Hai provato il plugin Members ? O Plugin Manager Capability ? Fanno le cose che vuoi?
soulseekah,

Puoi utilizzare User Role Editor se vuoi fare tutto visivamente :)

Risposte:


33

Prova questo ... Questo dovrebbe funzionare.

<?php
add_action('init', 'cloneRole');

function cloneRole()
{
    global $wp_roles;
    if ( ! isset( $wp_roles ) )
        $wp_roles = new WP_Roles();

    $adm = $wp_roles->get_role('administrator');
    //Adding a 'new_role' with all admin caps
    $wp_roles->add_role('new_role', 'My Custom Role', $adm->capabilities);
}
?>

Controllalo.


Attento!! questo sembra clonare il ruolo prima che i plugin aggiungano ruoli e funzionalità. Proverò admin_init per vedere se è meglio.
spankmaster79,

@ spankmaster79 Sì, per favore, sarà fantastico!
Rutwick Gangurde,

@RutwickGangurde non ha funzionato meglio. Il ruolo è ancora ignorato dal plugin
spankmaster79,

4

È sempre possibile utilizzare il plug-in Editor ruoli utente ;

  1. Installa il plugin
  2. Vai su Utenti> Editor ruoli utente
  3. Fai clic su "Aggiungi ruolo" a destra
  4. Scegli il ruolo che desideri duplicare dal menu a discesa "Crea copia di" nella finestra di dialogo
  5. Fai clic su "Aggiungi ruolo" nella finestra di dialogo

0

supponiamo che tu voglia clonare l'editor.

$edr = $wp_roles->get_role('Editor');
add_role('clonerole', 'clone roles', $edr->capabilities);

0

il sistema che ha funzionato nel mio caso è questo:

<?php
add_action('init', 'cloneRole');

function cloneRole() {
 $adm = get_role('administrator');
 $adm_cap= array_keys( $adm->capabilities ); //get administator capabilities
 add_role('new_role', 'My Custom Role'); //create new role
 $new_role = get_role('new_role');
  foreach ( $adm_cap as $cap ) {
   $new_role->add_cap( $cap ); //clone administrator capabilities to new role
  }
}
?>
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.