How do I fix problems with users not being able to publish and only submit for review after upgrade of Multisites installation?

We have a previous WPMU installation that has been upgraded to a WordPress Multisites installation. Since upgrading to 3.3.2 from 3.2.1 we have problem with editors/admin not being able to post on some of their blogs. They see a “Submit for review” button instead of “Publish” despite being admins or authors.

My first hunch while looking in the database was that the users having the problems all had their capabilities stored in the new way:

Read More
a:1:{s:6:"editor";s:1:"1";}

while users with capabilities stored in the old way:

a:1:{s:6:"editor";b:1;}

seemed to have no problems. But even after manually changing this in the database the problems was the same.

Also tried to change wp_NNN_user-settings in wp_usermeta to a value used for the same author in another blog where he could post with no change.

Then tried to register a complete new user and give it admin rights. Also got “Submit for review” button.

The super admin is also unable to publish and gets the message “Are you sure you want to do this?” upon publish.

How do I fix this?

I see that this WordPress.org support thread describes a behavior with publish buttons being replaced by Submit for Review after 3.3 upgrade

Related posts

Leave a Reply

1 comment

  1. After a full day of investigating the problem I managed to find the culprit and solve the problem.

    I localized the problem by following these steps:

    1. Create a new blog and give your user admin or editor privileges.
    2. In MySQL copy all posts from one of the troubled blogs to the new blog.
    3. Now the new blog has the same problem with the publish button being gone.
    4. Find the causing post(s) by using binary search.

    The posts causing this behavior turned out to be Auto Draft posts with no content, but not all of them.

    By running

    delete from wp_NNN_posts where post_status='auto-draft' AND post_content=''; 
    

    in each and every blog we got rid of the problem.