Differenza tra Admin e Super Admin nel Database

2 apr 2013, 13:02:05
Visualizzazioni: 13.9K
Voti: 3

Stavo osservando la tabella degli utenti e ho notato che sia un super admin (che ha accesso al pannello di amministrazione della rete) che un admin di un sito nella rete hanno lo stesso valore in wp_capabilities, cioè a:1:{s:13:"administrator";b:1;} e anche il wp_user_level è 10 per entrambi.

Quindi, mi chiedevo qual è il valore nel database che distingue un super admin da un admin? Non vedo altri usermeta relativi al livello di amministratore di rete.

Qual è il modo corretto per assegnare la capacità di super admin a un admin tramite:

  1. Modifica del Database.
  2. Via Codice.
0
Tutte le risposte alla domanda 2
0

Un amministratore è un utente sul sito corrente con il ruolo di amministratore.

I super amministratori/amministratori del sito, tuttavia, sono memorizzati in un'opzione del sito come un array di nomi utente.

Ad esempio, utilizzando SQL in MySQLWorkbench puoi eseguire una query come questa:

SELECT * FROM wp_sitemeta where meta_key='site_admins';

Per ottenere un array PHP serializzato. Modificando questo valore aggiungendo il tuo nome utente e ID utente ti renderà un amministratore del sito.

Se stai solo cercando di vedere chi è un amministratore del sito, hai queste funzioni:

get_site_admins();
is_super_admin();

Se su un sito singolo piuttosto che su una multisite, qualsiasi utente con la capacità delete_users sarà considerato un super amministratore.

Nota che un utente che è un amministratore/super-amministratore del sito non ha bisogno di avere un ruolo su un sito per eseguire azioni da amministratore. Questo può portare a situazioni strane poiché un super amministratore può scrivere un post su un blog di cui tecnicamente non fa parte, il che può essere confuso quando non appare nella lista degli utenti di quel blog poiché non ha un ruolo su quel blog.

2 apr 2013 13:08:34
0

Ho controllato il database MultiSite e ho trovato le seguenti due voci nella tabella wp_sitemeta che differenziano tra un super admin e un admin.

admin_user_id e site_admins

2 apr 2013 13:09:45