With the classic editor, we are able to write a post and set a different user as the author. In a multi-blog network, this has proven vital for some of our users' workflow. However, with Gutenberg this option is noticeably absent. I saw a ticket for this issue that was opened last year but that has already been marked as closed. However, I was not able to find anything like a solution.
The current workaround is to switch to classic, assign the correct author and switch back. Obviously, this is sub-optimal.
It is possible in a default WP installation, so maybe it's an issue on Multisite.
I've done some testing and it seems to only affect some blogs.
It is most noticeable where the Super Admin (network admin) is creating content on a blog where they would otherwise only be a participant. The root blog (blog 1) functions as expected. The blog with the fault has only content posted "by" the admin of the blog (more often with them set as the author).
Blogs with multiple active contributors show the option as expected.
edit_others_posts@lordmatt Did @Soean's comment above answer your question?
Closing as stale. Feel free to reopen.
I've run into this several times, and it feels like a bug to me, since the wrong author is attributed to the post.
Seems to happen any time a Super Admin creates a post on a site where they don't have an explicit role.
I agree. The desired behaviour should probably be to treat the super admin as a temporary contributor. That or detect that the user is not in the approved author list and offer the option which is much the same.
Incrementing authors.length under such circumstances would be one way to fix it.
https://meta.trac.wordpress.org/ticket/4768 is another example of how it can happen for multisite.
If a post which is assigned to a user id that doesn't have an explicit role on the site is edited, the author is forced to be changed to a user who does have a role.
It also seems likely that editing a post whose author had been removed from a given site would also reproduce it.
Just stumbled upon this on a Rosetta site (https://ru.wordpress.org/).
In the Posts list, the author was displayed correctly, but when editing a post, only three users were displayed instead of the actual author with the Locale Manager role:
wordpressdotorg user.When accidentally setting the author to wordpressdotorg, the post became inaccessible for further editing.
The majority of users on Rosetta sites have a custom role (Locale Manager, General Translation Editor, Translation Editor), however it looks like the Author box in the block editor doesn't handle that correctly.
I'm not sure whether it's a bug in Gutenberg, REST API, or the custom role implementation on WordPress.org.
AFAICT this needs to be fixed in Core by adjusting the the_block_editor_meta_box_post_form_hidden_fields() function. See https://core.trac.wordpress.org/ticket/50754#comment:3.
Most helpful comment
https://meta.trac.wordpress.org/ticket/4768 is another example of how it can happen for multisite.
If a post which is assigned to a user id that doesn't have an explicit role on the site is edited, the author is forced to be changed to a user who does have a role.
It also seems likely that editing a post whose author had been removed from a given site would also reproduce it.