Wir haben eine frühere WPMU-Installation, die auf eine WordPress Multisites-Installation aktualisiert wurde. Seit dem Upgrade von 3.2.1 auf 3.3.2 haben wir ein Problem damit, dass Redakteure/Administratoren nicht in der Lage sind, auf einigen ihrer Blogs zu posten. Sie sehen die Schaltfläche "Zur Überprüfung einreichen" anstelle von "Veröffentlichen", obwohl sie Administratoren oder Autoren sind.
Meine erste Vermutung beim Durchsuchen der Datenbank war, dass die Benutzer, die die Probleme hatten, alle ihre Fähigkeiten gespeichert hatten auf neue Weise :
a:1:{s:6:"editor";s:1:"1";}
während Benutzer mit Fähigkeiten, die auf die alte Weise gespeichert wurden:
a:1:{s:6:"editor";b:1;}
schien keine Probleme zu haben. Aber auch nach manueller Änderung in der Datenbank waren die Probleme gleich.
Es wurde auch versucht, wp_NNN_user-settings
in wp_usermeta
in einen Wert zu ändern, der für denselben Autor in einem anderen Blog verwendet wurde, in dem er ohne Änderung posten konnte.
Dann wurde versucht, einen komplett neuen Benutzer zu registrieren und ihm Administratorrechte zu geben. Außerdem wurde die Schaltfläche "Zur Überprüfung einreichen" angezeigt.
Der Superadministrator kann auch nicht veröffentlichen und erhält die Meldung "Sind Sie sicher, dass Sie dies tun möchten?". bei Veröffentlichung.
Wie behebe ich das?
Nach einem ganzen Tag der Untersuchung des Problems gelang es mir, den Täter zu finden und das Problem zu lösen.
Ich habe das Problem folgendermaßen lokalisiert:
Es stellte sich heraus, dass es sich bei den Posts, die dieses Verhalten verursachten, um Auto-Draft-Posts ohne Inhalt handelte, jedoch nicht alle.
Durch Laufen
delete from wp_NNN_posts where post_status='auto-draft' AND post_content='';
in jedem Blog haben wir das Problem beseitigt.