Opened 9 years ago
Last modified 4 months ago
#39942 new defect (bug)
Restored Post may steal slug to published Post
| Reported by: |
|
Owned by: | |
|---|---|---|---|
| Milestone: | Future Release | Priority: | normal |
| Severity: | normal | Version: | |
| Component: | Posts, Post Types | Keywords: | needs-testing |
| Focuses: | Cc: |
Description
Steps to reproduce:
- Create a Post 1 with title "Post",
- Assign the slug 'post' to Post 1,
- Publish Post 1,
- Unpublish Post 1 by setting it as 'Draft', then Update,
- After Update, Trash Post 1,
- Repeat 1-5 for Post 2,
- Create a Post 3 with title "Post",
- Assign the slug 'post' to Post 3,
- Publish Post 3,
- Now restore Post 2,
- Open/Reload the edit screen for Post 3,
- It'll show 'post-2' as slug,
- Saving/Updating Post 3 will change the slug from 'post' to 'post-2'.
Probably the following functions participate in the issue:
wp_add_trashed_suffix_to_post_name_for_post, which is checking for
if ( '__trashed' === substr( $post->post_name, -9 ) ) {
while Post 2 has post__trashed-2 as post name
wp_unique_post_slug, which is not checking the uniqueness of the slug if the post isdraft.
Change History (2)
Note: See
TracTickets for help on using
tickets.
Related #61996 #47552
I'm not sure if this (or the other) are duplicates #61996. Look very similar, need reproduction