-
Notifications
You must be signed in to change notification settings - Fork 4.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Core Data: Clear auto-draft titles on save if not changed explicitly. #17633
Conversation
Worth expanding E2E tests? |
(thanks for the quick dive into this!) |
Yeah, added one here: c30ed80 |
if ( ! data.status ) { | ||
data = { ...data, status: 'draft' }; | ||
} | ||
if ( ! data.title || data.title === 'Auto Draft' ) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should Auto Draft be put through a translation function? It is translated in get_default_post_to_edit()
. Not 100% sure if that is the same place the post title is getting set in Gutenberg.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How does that relate to this change? We are clearing the title here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well it compares the title with an English string, which might not work on a localized environment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Got it.
So is "Auto Draft" translated in this context? Where would we check?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, as that string is coming from get_default_post_to_edit()
.
So you'd need to compare it with __( 'Auto Draft' )
, not just 'Auto Draft'
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks like it is. I just tried @swissspidy's replication steps on trunk in a non-english locale, and the title was set to Automatisch gespeicherter Entwurf
on publish.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm trying to replicate it, but data.title
is always undefined
here unless you explicitly typed in the auto draft title, so the second check doesn't even run.
Fixes #17628
Description
This PR fixes an issue where saving an
auto-draft
without a title would persist its default title, "Auto Draft", in the newdraft
orpublished
post. The latter two statuses don't have an incoming filter to clear the "Auto Draft" title so it would show in the editor and confuse users.How has this been tested?
It was verified that saving or publishing new posts without titles no longer sets the title to "Auto Draft", but keeps it empty instead.
Types of Changes
Bug Fix: New posts saved or published without a title will no longer have their title set to "Auto Draft".
Checklist: