Filtra la ricerca ...
Categorie

Come aggiungere un utente WordPress da database MySQL

Ciao e benvenuto. Se hai bisogno di chiarimenti sul codice, lascia un commento (no WhatsApp); ricorda però che non fornisco assistenza gratuita sugli articoli che ho scritto nè personalizzo il codice in modo gratuito, quindi se la tua richiesta va oltre il semplice "aiutino", se vuoi mi chiedi una consulenza a pagamento nella pagina contatti. Grazie della comprensione. Alessio

Mi è capitato di dovere creare un nuovo utente WordPress direttamente dal database MySQL; questa procedura può essere molto utile nel caso in cui vi imbattiate in qualche sito che è stato hackerato e siano stati eliminati gli utenti dal database. Si si, ho visto cose che voi umani non potete immaginare 🙂

Premetto che le procedura è abbastanza delicata, quindi se non si è certi di ciò che si sta facendo, meglio chiedere ad un professionista.

Intanto dobbiamo avere a disposizione gli accessi a PHPMyAdmin (o equivalente), per potere accedere al database del sito, altrimenti ciccia… Una volta avuto accesso al db MySQL….

  1. cliccare sul nome del database per espandere tutte le tabelle
  2. cliccare sulla tabella wp_users, troveremo una schermata simile a questa

    Come aggiungere un utente WordPress da database

  3. cliccare “inserisci” , la voce si trova nel menu in alto (mostra, struttura, sql, …)
  4. si aprirà il form di inserimento di un nuovo record nel database

    creazione user wordpress da mysql

    ID : assegnare un numero, se sono presenti già altri user, assegnare un numero che non sia già stato utilizzato (prendetene nota perchè lo utilizzeremo più avanti)
    user_login : questo sarà il nome utilizzato per effettuare il login, cioè la username         
    user_pass : questa sarà la password per il login (dal menu a tendina a lato sinistro del campo, selezionare “MD5”)
    user_nicename : potete scrivere quello che volete, tipo “amministratore del sito” (senza virgolette)
    user_email : indirizzo email dell’utente
    user_url : potete scrivere l’indirizzo del sito, del vostro sito o anche lasciare il campo vuoto
    user_registered : selezionare l’icona del calendario una data di creazione utente, va benissimo anche la data odierna
    user_activation_key  : lasciare vuoto
    user_status : inserire il valore “0” (zero senza virgolette)
    display_name : questo è il nome visualizzato quando sarete loggati

  5. dovreste ottenere una schermata simile a quella sottostante, una votla compilati tutti i campi

    inserimento record tabella database wp

  6. a questo punto premendo “esegui” verrà eseguita la query mysql che creeerà l’utente, ma se proviamo a loggarci otterremo questa schermata perchè l’utente è privo dei diritti

    assegnare autorizzazione utente wordpress da mysql

Come assegnare le autorizzazioni ad un utente WordPress direttamente dal database MySQL

  1. cliccare sulla tabella wp_usermeta
  2. cliccare su inserisci e compilare i campi come segue

    unmeta_id : lasciare vuoto, viene generato in automatico
    user_id : inserire l’id dell’utente creato in precedenza (nell’esempio è 9)
    meta_key : digitare “wp_capabilities” (senza virgolette)
    meta_value : “a:1:{s:13:”administrator”;s:1:”1″;}” (senza virgolette iniziali e finali)
    meta_value per WordPress da 4.61: a:1:{s:13:”administrator”;b:1;} (senza virgolette iniziali e finali)

    wp_usermeta administrator

  3. premere esegui e di nuovo inserisci, compilare i campi successivi come segue

    unmeta_id : lasciare vuoto, viene generato in automatico
    user_id : inserire l’id dell’utente creato in precedenza (nell’esempio è 9)
    meta_key : digitare “wp_user_level” (senza virgolette)
    meta_value : “10” (senza virgolette iniziali e finali)

    wp_usermeta level

  4. Ora è possibile loggarsi alla dashboard di WordPress con il nuovo utente con diritti di amministratore

Query MySQL per aggiungere un utente a WordPress con diritti amministrativi

Per chi fosse smaliziato o volesse studiarsi direttamente la query di mysql, eccola qui .

N.B.

nome database : database (sostituitelo con il vostro altrimenti non funzionerà)

username : demo

password : demo

Query MySQL per aggiungere l’utente

 Query MySQL per impostare i permessi amministrativi

Query per versioni WordPress da 4.61

Potrebbe interessarti anche ...

Hai bisogno di una consulenza, lo sviluppo di un plugin o vuoi incrementare le performance del tuo sito ?

51 commenti su “Come aggiungere un utente WordPress da database MySQL”

  1. Ciao Alessio.
    Ho trovato molto utile il tuo articolo e ti ringrazio.
    Ma nonostante abbia seguito tutti i passaggi punto per punto e ripetuto l’operazione più volte (elimando gli utenti creati e creandone di nuovi), continuo a non avere i permessi e mi esce l’errore “Devi farti autorizzare per accedere a questa pagina.”

    Come posso risolvere?
    Ti ringrazio
    Maurizio

    Rispondi
  2. Ciao Alessio.
    Grazie per la risposta.
    Nel file wp-config.php è tutto in regola e il sito non è stato spostato.
    In realtà funzionava regolarmente da oltre un anno e improvvisamente ora non è più visibile. Da phpMyAdmin io vedo il db e relativi contenuti quindi sicuramente è un problema di connessione al Db che credo sia adducibile ad Aruba a questo punto dato che nessuno ci ha messo mano.

    Rispondi
  3. Eh Alessio… purtroppo è così. Il sito è stato bucato. Nella tabella User c’era un utente che io credevo fosse un admin creato dal mio cliente (il sito gliel’ho consegnato un anno fa e se lo sono gestito loro…) che probabilmente ha fatto danni di varia natura. Infatti le tabelle dei post sono vuote e tutti i contenuti non ci sono più.
    Ti ringrazio delle risposte e a prescindere, grazie dell’artixolo che è molto interessante.
    Alla prossima 🙂

    Rispondi
  4. Buongiorno Alessio,

    ti scrivo dopo aver seguito la tua guida relativa a come aggiungere e modificare un utente in wordpress tramite DB.

    Io ho un sito in wordpress e, dato che mi è stato consigliato di cambiare il prefisso standard wp_ ho fatto questa operazione:

    Sono andato nell’area riservata Mysql del mio servizio di hosting e ho utilizzato la query RENAME per rinominare tutte le tabelle con prefisso wp_ con il nuovo prefisso che chiamerò (nuovoprefisso_).

    A quel punto ho modificato anche il file wp-config.php con il nuovo nome di tabella. Ho poi controllato e tutte le tabelle (anche quelle interne hanno il prefisso giusto)

    Ebbene quello che è successo è che il sito è fruibile e non ha errori nel front end, riesco a vederlo e visualizzarlo correttamente.
    Nel backend invece, cioè se inserisco il mio username e la mia password su wp-admin il sistema non mi fa accedere, mi da questo errore:

    – Devi farti autorizzare per accedere a questa pagina.

    Ho seguito la tua guida e tutto è corretto i valori sono giusti ma continua a darmi questo problema. Tu mi potresti aiutare nel caso?

    Rispondi
  5. Gentilissimo Alessio, grazie per la risposta.

    Prima di procedere a rinominare le tabelle ho fatto il backup di tutto il sito tramite servizio FTP con File zilla ma non ho fatto un backup da db mysql.

    Ho provveduto a rinominare tutte le tabelle come all’origine, con il prefisso wp_
    Come prima riesco a vedere il sito web on line perfettamente funzionante, mentre per quello che riguarda l’utente mi da sempre l’errore

    – Devi farti autorizzare per accedere a questa pagina.

    A questo punto mi viene un dubbio. Non è che per caso il problema sia da imputare agli accessi che ha l’utente?

    Rispondi
  6. Caro Alessio,

    ho seguito alla lettera l’articolo che hai postato. Ho lanciato le query che hai postato, creando l’utente DEMO nel mio database.

    L’utente è creato correttamente perché se entro nell’area amministrativa posso inserire username e password ed entro, ma poi mi da ancora

    – Devi farti autorizzare per accedere a questa pagina.

    Mi sembra incredibile

    Rispondi
  7. Grazie Alessio,

    putroppo non funziona neppure cosi’, stesso problema. Ho aperto anche un ticket di assistenza con il mio fornitore di hosting. Penso che l’unica soluzione sia a questo punto installare da zero wordpress con le nuove tabelle e poi importare tutti gli articoli e i contenuti presenti nel sito. In fondo quello che mi interessa di più sono tutti i contenuti dato che il layout verrà modificato nei prossimi mesi.

    Rispondi
  8. Ciao, ho avuto diversi problemi in fase di installazione di wp in locale, in pratica l’ultimo step dell’installazione dopo inserimento user e psw riportava a pagina bianca e user e psw risultavano inesistenti. Ho seguito le indicazioni dell’articolo e finalmente riesco ad accedere tramite localhost/sito/wp-admin. Qui però sorge il problema in quanto a seguito login mi riporta alla pagina localhost/sito dove vedo in alto a dx la mia log-in ma non posso accedere alla pagina di amministrazione. ho tentato di inserire localhost/sito/wp-admin/index.php ma riporta l’errore “devi farti autorizzare”. ANche se ricarico banalmente localhost/sito/wp-admin stesso errore anche se sono già loggato. Qualche consiglio? Sto impazzendo….

    Rispondi
  9. Ciao. Riesco tranquillamente ad entrare nel pannello di controllo wordpress con i miei dati da super user ma non mi da la possibilità di effettuare modifiche, inserire articoli ecc…vedo solo la pagina di benvenuto. Ho provato a seguire la procedura, creo nuovi utenti ma non riesco a modificare i permessi….come potrei risolvere?

    Rispondi
  10. Ciao Ho eseguito la procedura descritta passo per passo, ma riottengo lo stesso risultato ovvero:
    – Devi farti autorizzare per accedere a questa pagina.
    … non capisco se è una questione di permessi…
    notavo però che agli altri utenti nel wp_usermeta ci sono anche altri valori assegnati.. sarà quello il motivo?

    Rispondi
  11. Ho risolto :-)) forse qualcosa copiato male nell istruzioni… ho copiato il meta_value da un altro utente amministratore ed è andato 🙂

    Rispondi
  12. Salve,
    ho seguito tutta la guida per aggiungere un utente in WP tramite phpmyadmin ma nisba, mi entra ma mi compare solo la barra in alto con tanto di logo WP ma non vedo la barra delle pagine, articoli ecc.

    Rispondi
  13. Grazie per la risposta Alessio. Ho risolto. In pratica mi sono accorto che il wp_capabilities è direttamente collegato ai nomi delle tabelle stesse di phpmyadmin e quindi dall’impostazione iniziale di WordPress. Mi è bastato cambiare il wp_capabilities con un altro tipo di dicitura (uguale alle tabelle impostate su WP) come ad esempio: dgdsgd_capabilities. Ha funzionato. Ora infatti vedo tutta la barra di amministrazione a sinistra, come avessi creato l’utente dal pannello admin di WP.

    Rispondi
  14. Ciao Alessio, complimenti per il tuo articolo.
    Ho bisogno di un plugin o qualcosa di simile con lo scopo di autorizzare uno o più utenti alla registrazione dei vari user direttamente da una pagina web (front end) questo per evitare che entri nella Dashboard di wp; rendendo le cose più semplici anche a chi non ne capisce nulla di programmazione web.
    Sai se per caso esiste qualcosa di simile o che mi permetta di fare questo?
    Grazie

    Rispondi
    • Ciao Alessio, grazie per il consiglio, l’app sembra essere quella giusta. Con qualche aggiustamento sicuramente farà al caso mio
      Grazie ancora 😉

      Rispondi
  15. Articolo interessante
    Avrei da porre una domanda

    Con le ultime versioni di WordPress è cambiato qualcosa?

    L’utente sono riuscito a crearlo ma in nessun caso ad impostarlo come amministratore.
    Si crea un utente ruolo “Nessuno” !

    Rispondi
  16. Dal phpmyadmin > tabella wp_user 1° passaggio (nel mio caso il prefisso è diverso, ho provato a regolarmi di conseguenza ma nulla da fare) e wp_usermeta nel 2°

    Una differenza che ho subito notato dopo il 1° passaggio è stata che io potevo loggarmi senza rilascio di errori

    Semplicemente una volta loggato non potevo fare nulla!

    Rispondi
  17. Ciao Alessio e grazie per la guida.. Problema: nell’inserimento dei dati in wp_usermeta non appare il nome utente e alcune righe risultano NULL, in fase di inserimento ho una doppia maschera separata da una spunta “Ignora”

    Rispondi
  18. Ciao,
    volevo segnalarti che la stringa “a:1:{s:13:”administrator”;s:1:”1″;}” varia in base alle versioni di WordPress.
    Consiglio di duplicare quella relativa all’amministratore già esistente.

    Sulla versione 4.2.15 ho utilizzato questa:

    a:1:{s:13:”administrator”;b:1;}

    Rispondi
  19. Buondì, ho bisogno di un aiuto.
    Ho rimesso online un sito web creato in wordpress dopo circa due anni, ho cambiato dominio da .it a .com. Ho problemi ora con l’accesso al pannello di controllo. Ho sguito passo passo questa guida ma quando inserisco user e password non mi fa accedere. Potrebbe essere il problema della differente versione di wordpress (4.6.1) che con questa stringa a:1:{s:13:”administrator”;s:1:”1″;} non va??

    Rispondi
  20. Ciao,

    ho cercato di seguire la tua guida per modificare il ruolo utente dal db, ora è Sottoscrittore e voglio portarlo ad Amministratore. Come ID è 20. Ho messo i 2 codici in SQL + Esegui così, ma non cambia:

    INSERT INTO `nome-database`.`wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, ’20’, ‘wp_capabilities’, ‘a:1:{s:13:”administrator”;s:1:”1″;}’);

    INSERT INTO `nome-database`.`wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, ’20’, ‘wp_user_level’, ’10’);

    Rispondi
Se vuoi postare codice usa codeshare.io
Se vuoi postare uno screeshot usa postimages.org ed inserisci l'url nel commento.

Lascia un commento


Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.

Iscriviti e ricevi trucchi e guide

Inserisci la tua email per ricevere gli ultimi articoli dal blog.

Inserendo i tuoi dati confermi di aver letto ed essere d’accordo con la privacy policy.