Kategorien
Sonstiges Wordpress

WordPress – Fehlende Rechte

Irgendwann im Laufe der Upgrades von WordPress konnte ich WordPress nicht mehr von innen heraus updaten. Ausserdem fehlten wir die Rechte um z.B. die Widgets zu ändern. Mir war das egal, tat ja alles, aber jetzt wollte ich doch mal wieder was ändern. Nach langer Suche fand ich folgenden Eintrag im wordpress.org Forum:

Well, I fixed my installation. Finally!

Here’s how I think you can fix yours. As always, it’s recommended to backup your files and database.

First, I don’t know if it makes a difference, but it may be a good idea to log out of WordPress.

Also, before you do this, you may want to note down the settings for your custom user roles or whatever that is you’re talking about, as this will obliterate any custom user roles.

Go into phpMyAdmin. Go into your WordPress database. Go to the search tab and look for ‚roles‘ (make sure to select all tables, so you can search them). You’ll find the option_name wp_user_roles (you could have gone there directly, but I find it easier to search). Click the edit button. Replace the option_value with the following:

a:5:{s:13:"administrator";a:2:{s:4:"name";s:13:"Administrator";s:12:"capabilities";a:62:{s:13:"switch_themes";b:1;s:11:"edit_themes";b:1;s:16:"activate_plugins";b:1;s:12:"edit_plugins";b:1;s:10:"edit_users";b:1;s:10:"edit_files";b:1;s:14:"manage_options";b:1;s:17:"moderate_comments";b:1;s:17:"manage_categories";b:1;s:12:"manage_links";b:1;s:12:"upload_files";b:1;s:6:"import";b:1;s:15:"unfiltered_html";b:1;s:10:"edit_posts";b:1;s:17:"edit_others_posts";b:1;s:20:"edit_published_posts";b:1;s:13:"publish_posts";b:1;s:10:"edit_pages";b:1;s:4:"read";b:1;s:8:"level_10";b:1;s:7:"level_9";b:1;s:7:"level_8";b:1;s:7:"level_7";b:1;s:7:"level_6";b:1;s:7:"level_5";b:1;s:7:"level_4";b:1;s:7:"level_3";b:1;s:7:"level_2";b:1;s:7:"level_1";b:1;s:7:"level_0";b:1;s:17:"edit_others_pages";b:1;s:20:"edit_published_pages";b:1;s:13:"publish_pages";b:1;s:12:"delete_pages";b:1;s:19:"delete_others_pages";b:1;s:22:"delete_published_pages";b:1;s:12:"delete_posts";b:1;s:19:"delete_others_posts";b:1;s:22:"delete_published_posts";b:1;s:20:"delete_private_posts";b:1;s:18:"edit_private_posts";b:1;s:18:"read_private_posts";b:1;s:20:"delete_private_pages";b:1;s:18:"edit_private_pages";b:1;s:18:"read_private_pages";b:1;s:12:"delete_users";b:1;s:12:"create_users";b:1;s:17:"unfiltered_upload";b:1;s:14:"edit_dashboard";b:1;s:14:"update_plugins";b:1;s:14:"delete_plugins";b:1;s:15:"install_plugins";b:1;s:13:"update_themes";b:1;s:14:"install_themes";b:1;s:11:"update_core";b:1;s:10:"list_users";b:1;s:12:"remove_users";b:1;s:9:"add_users";b:1;s:13:"promote_users";b:1;s:18:"edit_theme_options";b:1;s:13:"delete_themes";b:1;s:6:"export";b:1;}}s:6:"editor";a:2:{s:4:"name";s:6:"Editor";s:12:"capabilities";a:34:{s:17:"moderate_comments";b:1;s:17:"manage_categories";b:1;s:12:"manage_links";b:1;s:12:"upload_files";b:1;s:15:"unfiltered_html";b:1;s:10:"edit_posts";b:1;s:17:"edit_others_posts";b:1;s:20:"edit_published_posts";b:1;s:13:"publish_posts";b:1;s:10:"edit_pages";b:1;s:4:"read";b:1;s:7:"level_7";b:1;s:7:"level_6";b:1;s:7:"level_5";b:1;s:7:"level_4";b:1;s:7:"level_3";b:1;s:7:"level_2";b:1;s:7:"level_1";b:1;s:7:"level_0";b:1;s:17:"edit_others_pages";b:1;s:20:"edit_published_pages";b:1;s:13:"publish_pages";b:1;s:12:"delete_pages";b:1;s:19:"delete_others_pages";b:1;s:22:"delete_published_pages";b:1;s:12:"delete_posts";b:1;s:19:"delete_others_posts";b:1;s:22:"delete_published_posts";b:1;s:20:"delete_private_posts";b:1;s:18:"edit_private_posts";b:1;s:18:"read_private_posts";b:1;s:20:"delete_private_pages";b:1;s:18:"edit_private_pages";b:1;s:18:"read_private_pages";b:1;}}s:6:"author";a:2:{s:4:"name";s:6:"Author";s:12:"capabilities";a:10:{s:12:"upload_files";b:1;s:10:"edit_posts";b:1;s:20:"edit_published_posts";b:1;s:13:"publish_posts";b:1;s:4:"read";b:1;s:7:"level_2";b:1;s:7:"level_1";b:1;s:7:"level_0";b:1;s:12:"delete_posts";b:1;s:22:"delete_published_posts";b:1;}}s:11:"contributor";a:2:{s:4:"name";s:11:"Contributor";s:12:"capabilities";a:5:{s:10:"edit_posts";b:1;s:4:"read";b:1;s:7:"level_1";b:1;s:7:"level_0";b:1;s:12:"delete_posts";b:1;}}s:10:"subscriber";a:2:{s:4:"name";s:10:"Subscriber";s:12:"capabilities";a:2:{s:4:"read";b:1;s:7:"level_0";b:1;}}}

Click Go right below that. Now, for good measure, go back to the front of your database, go into wp_usermeta. Find your username id # by referencing it against your nickname. Now find the wp_capabilities entry with that user_id and edit it. Put in

a:1:{s:13:"administrator";s:1:"1";}

for the meta_value. Click Go. [This part of the process I found out from here, though note the meta_value value they use is different.]

Why does this fix it? New capabilities were introduced in WP 3.0, I found out via this wiki entry. Somehow, it appears, custom user roles got screwed over because of this.

Anyhow, so reset the user roles by following the instructions I wrote above and you should be good to go, have all your admin powers back. Make sure to check up on and other users you have (if you have any) after the whole thing to see if you need to change their role or anything.

Also, I don’t know if custom user role plugins work properly with 3.0 yet, then. I don’t want to test for a bit, at least! Anybody braver right now, feel free to report.

Aaaaand one more thing. The problem was somewhat caused by a custom role plugin, but one might think WordPress would gracefully handle adding new capabilities to the correct role or whatever. Anyway, not good. Bug report, then?

Quelle: https://wordpress.org/support/topic/upgraded-to-30-cant-access-widget-settings#post-1624467