Sites running WordPress 6.3 and plugins that add the
post__not_in query variable on the
parse_query hook are breaking the lists of posts and pages in the Dashboard. I found this bug because I built and maintain a plugin that did exactly this.
Example pages with errors after updating to WordPress 6.3
post__not_in query variable makes it easy for developers to hide posts and pages from dashboard users. The
parse_query hook is one of the last hooks before the main query runs, and a handful of hide-page-tutorials recommend using it to exclude specific posts or pages from the query.
How to Fix
Follow this advice: Avoid post__not_in
How to find out if a plugin is causing the errors
Disable all plugins one at a time and check the broken pages. This is the way to troubleshoot almost every problem on a WordPress site. If you cannot deactivate all plugins for this plugin conflict test, create a duplicate copy of the site to use during the test.