it-swarm.com.de

Fügen Sie Sie Wordpress MU Network Admin über die Datenbank hinzu

Ich arbeite daran, eine Kopie eines WordPress MU-Netzwerks für Entwicklungszwecke auf meinem lokalen Computer zum Laufen zu bringen (derzeit mit WordPress 3.2.1). Ich benötige Zugriff auf die Netzwerkadministrationsoptionen.

In der Usermeta-Tabelle habe ich meinen user-level in 10 und meine capabilities in a:1:{s:13:"administrator";b:1;} geändert.

In der Sitemeta-Tabelle habe ich mich dem serialisierten Array von Benutzern mit der Option site_admins hinzugefügt.

Dadurch habe ich zwar Zugriff auf die allgemeine wp-admin-Seite, aber ich habe immer noch keinen Zugriff auf eine der Netzwerkadministrationsoptionen (z. B. automatisches Upgrade für WP, Plugins oder Themes usw.).

5
quadium32

Es stellt sich also heraus, dass diese drei Änderungen alles waren, was benötigt wurde. Es stellt sich außerdem heraus, dass das System nur annimmt, dass Sie kein Netzwerkadministrator sind, wenn eines der serialisierten Arrays falsch geändert wurde (was bei manuellen Änderungen einfach ist).

Das Problem wurde behoben, indem das serialisierte Array für die Option site_admins korrigiert wurde.

4
quadium32

Hier sind die Abfragen, um einen neuen Administrator-Benutzer zu erstellen:

INSERT INTO `wp_users` (`user_login`, `user_pass`, `user_nicename`, `user_email`, `user_status`)
VALUES ('newadmin', MD5('pass123'), 'firstname lastname', '[email protected]', '0');

INSERT INTO `wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, (Select max(id) FROM wp_users), 'wp_capabilities', 'a:1:{s:13:"administrator";s:1:"1";}');


INSERT INTO `wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, (Select max(id) FROM wp_users), 'wp_user_level', '10');

Es wird dir auf jeden Fall helfen. :)

0
Gaurav

Nur für den Fall, dass das Format für das serialisierte Array in meta_value, in dem meta_key='site_admins' in der sitemeta-Tabelle für jemanden nicht klar ist (wie es für mich nicht klar war).

a:5:{i:0;s:5:"admin";i:1;s:9:"user12345";i:2;s:4:"user";i:3;s:5:"user1";i:4;s:8:"user1234";}

a:5 am Anfang des Arrays gibt an, dass das Array fünf Elemente enthält.

Die Länge jedes Elements wird auch durch s:x angegeben, wobei x die Länge des Array-Elements ist. Zum Beispiel wird die Länge des Benutzernamens für admin durch s:5 angezeigt.

0
locoMotion

Ich hatte seit Tagen mit diesem Problem zu kämpfen, dh. Beim Aktualisieren des Domänennamens meiner Hauptnetzwerksite verschwand die Netzwerkadministratoroption aus dem Dashboard. Versuchte überall hinzuschauen. Schließlich kam ich zu dieser Frage und als ich die Erklärung von locoMotion über die Bedeutung der Felder in der Sitemeta-Tabelle las, bemerkte ich, dass die Länge des Benutzernamens für den Superadmin nicht korrekt war. Als ich das behoben habe, wurde das SiteAdmin-Menü wieder im Dashboard angezeigt. Vielen Dank an @ quadium32 für diese Frage und an @ locoMotion für die Erklärung der Bedeutung der Sitemeta-Werte. Freundliche Grüße. Tariq

0
Tariq