Making WordPress.org

Opened 11 months ago

Closed 10 months ago

Last modified 10 months ago

#7085 closed defect (bug) (fixed)

Correct various "plugin type" issues

Reported by: jonoaldersonwp's profile jonoaldersonwp Owned by: coffee2code's profile coffee2code
Milestone: Priority: high
Component: Plugin Directory Keywords: seo performance
Cc:

Description

The Plugin directory's 'community'/'commercial' filtering options have several interconnected SEO problems (which are already causing problems), which need to be addressed in the following order:

  • Filtered states omit a canonical URL tag. This should be added.

Change History (9)

#1 @dd32
11 months ago

URLs are implemented as query strings, rather than pretty permalinks.

Part of the problem here is that they're intentionally using query strings, as it's a filter on top of the existing permalinks, ie. https://wordpress.org/plugins/browse/blocks/?plugin_business_model=community is "/browse/blocks/ but limited to Community plugins".

#2753 (and others) will result in there being more filtered views like this in the future. It doesn't make sense to use pretty-permalink type URLs for all of these.

The rest of the issues here I believe are indeed something that needs resolving.

#2 follow-up: @jonoaldersonwp
11 months ago

Not ideal, but we can live with that! We'll still need canonical URLs, then, which include the business model string.

#3 in reply to: ↑ 2 @dd32
11 months ago

Replying to jonoaldersonwp:

We'll still need canonical URLs, then, which include the business model string.

Yep, I agree.

Some notes while looking at this:

Filtered states omit a canonical URL tag

https://wordpress.org/plugins/browse/blocks/?plugin_business_model=community doesn't contain a canonical link, as it's a multi-taxonomy query which we don't currently support canonical links for right now.
Because from a code point of view, it's not possible to determine which taxonomy is the "primary" one and which should appear as query vars. We can probably add minimal support by doing something like "if multi taxonomy, and only one has a pretty-permalink, we can assume that's primary".

Requests to out-of-bounds filtered ranges

https://wordpress.org/plugins/browse/blocks/page/2/?plugin_business_model=community is redirected by Plugin_Directory->custom_redirects:1278, same thing which redirects urls like /plugins/browse/somethingrandom/ or /plugins/browse/blocks/sillyendpoint/.

I don't think a redirect is actually the proper thing here, probably a 404 is more appropriate.

The actual problem I think is that https://wordpress.org/plugins/browse/blocks/page/2/ links to this problematic URL, the Community/Commercial links here should likely remove the pagination state.

The 'all' link on paginated+filtered states

Again, these urls should be omitting any pagination data I think, which I think would resolve this.

#4 @jonoaldersonwp
11 months ago

Thanks, makes sense!

Ok, on tricky canonicals, let's noindex those instead. Especially as there might be more (compounding) filters/params etc in the future

For the redirects/404s etc, jut changing those links definitely seems like a more graceful fix.

#5 @dd32
10 months ago

#7053 was marked as a duplicate.

#6 @dd32
10 months ago

#7187 was marked as a duplicate.

#7 @coffee2code
10 months ago

In 12825:

Plugin Directory: Remove pagination from all/community/commercial filter links.

There is no need to preserve pagination when making the link for another filtered listing, which can result in a 404.

Props nayanchamp7, jonoaldersonwp, dd32, kawserz, coffee2code.
See #7085.

#8 @coffee2code
10 months ago

  • Owner set to coffee2code
  • Resolution set to fixed
  • Status changed from new to closed

In 12826:

Plugin Directory: Noindex multi-filtered view.

Props jonoaldersonwp, dd32, coffee2code.
Fixes #7085.

#9 @jonoaldersonwp
10 months ago

Nice one, thanks!

Note: See TracTickets for help on using tickets.