WordPress.org

Make WordPress Core

Opened 15 months ago

Last modified 11 months ago

#20386 new defect (bug)

Year permalinks "win" against category permalinks

Reported by: markjaquith Owned by:
Priority: normal Milestone: Future Release
Component: Canonical Version:
Severity: normal Keywords:
Cc:

Description

We need to decide whether category permalinks should take priority over year permalinks.

e.g. /2008/?category_name=cat-a

Should that stay the same, or redirect to:

/category/cat-a/?year=2008

We have a unit test which is failing.

Change History (4)

comment:1 nacin15 months ago

We've had somewhat similar prioritization issues where this has come up for post types versus taxonomies.

I think it should go like this: post types > taxonomies > date filters.

comment:2 duck_15 months ago

Similarly with the author_name vs. year query variables, see #17661. We should take one of these tickets and define the priority of all query variables.

Also related: #18385.

comment:3 scribu15 months ago

Agree that date filters should have the lowest priority.

comment:4 wonderboymusic11 months ago

IMO, canonical URL should always win over query string, and both always win over tax_query.

I addressed the problem with tax_query winning here: #20767

Right now, tax is beating tag and category, which to me makes no sense because tax_query is a sub-request. Query string terms get tax=term treatment in WP_Query but are really only altering context of the request, not completely changing it.

Precedence really only affects theme functions since is_year, is_category will both be true and the year and category are publicly available in the request. Whoever "wins" gets precedence in which template is picked or which title is displayed, etc.

Last edited 11 months ago by SergeyBiryukov (previous) (diff)
Note: See TracTickets for help on using tickets.