Make WordPress Core

Opened 17 years ago

Closed 16 years ago

Last modified 16 years ago

#5705 closed defect (bug) (duplicate)

Yearly Archive is Broken When Custom Permalink Contains Page Slug

Reported by: fonetik's profile fonetik Owned by:
Milestone: Priority: normal
Severity: normal Version: 2.3.2
Component: General Keywords: rewrite, permalink, canonical, url
Focuses: Cc:

Description

If the index of a Wordpress blog is configured to show a page and the blog loop then runs when another page is accessed, then it is natural to have that page slug as the first entry in the permalink path.

In my specific case, "/" shows the "Main" page, so I created a "Blog" page (whose slug is "blog") on which the normal blog posts loop runs. I have custom permalinks which look like "/blog/year/month/day/post-slug".

Single entries, daily archives, and monthly archives can all be accessed correctly, but yearly archives just show the blog front page (as if the URL path was "/blog/" instead of "/blog/2006/".

The same issue results if the first directory in the permalink path is the same as a normal page slug, though in that case the yearly archive URL just shows that page.

I spent a lot of time looking through rewrite.php and it seems that the issue could have something to do with the relaxed pagination rules which allow "/blog/2/" to reference the second page of paginated posts instead of the canonical "/blog/page/2/" although it could also be a problem with the URL being matched by the relaxed attachments rules which allow "/page/attachment-name/" instead of the "/page/attachment/attachment-name/".

More generally, it seems that there are a lot of overly general URLs accepted by the rewrite. The new canonical URL stuff in 2.3 is great, but it seems strange that there is code to reduce the number of URLs in canonical.php when there is extra code in rewrite.php that only exists to create multiple URLs which point to the same thing (pagination, attachments, and feeds seem to be the worst offenders).

Change History (4)

#1 @lloydbudd
17 years ago

  • Milestone changed from 2.3.3 to 2.6

#2 @roganty
17 years ago

I have just submitted a new bug which is similar to this one #5760

#3 @Otto42
16 years ago

  • Resolution set to duplicate
  • Status changed from new to closed

#4 @thee17
16 years ago

  • Milestone 2.6 deleted
Note: See TracTickets for help on using tickets.