DNNCommunity / Dnn.CommunityForums

Open-source forums module for DNN Platform. This is a fork and continuance of the Active Forums module.
https://dnncommunity.org
Other
13 stars 21 forks source link

Remove ShortURL (non-)optional feature #360

Open johnhenley opened 1 year ago

johnhenley commented 1 year ago

Description of task

Forums module has a module setting for SHORTURLS that is not settable from the UI but is always enabled. This setting is evaluated every time a topic url is generated and adds unnecessary complexity (it's used dozens of places) and questionable value. While the shorter url (a topic as a query parameter but without the corresponding forum / forum group parameters as context) perhaps makes the page smaller, it duplicates many URLs that a crawler sees and potentially erodes SEO.

Proposing to remove this option and always generating consistent longer contextual URLs.

Incoming shorter URLs would continue to work but might add 301 redirects to the longer URLs?

What general area(s)/component(s) are affected?

check any / all [] User interface [] Database schema [X] Business Logic [] Dependencies [] Installation/manifest

Additional context

Add any other context or screenshots about the task here.

WillStrohl commented 1 year ago

I'm not instantly thinking of a decision yet, but the SEO concern can and should be mitigated with a canonical URL being added to the page header. I think this may already be there, but it may need to be looked at again since the friendly URL updates.

What kinds of use cases/legacy workflows do we think this might be related to and/or impact if we removed it?

johnhenley commented 1 year ago

Here's an example:

https://dnncommunity.org/forums/using-dnn/upgrading-dnn/

The primary link for the topic is:

https://dnncommunity.org/forums/using-dnn/upgrading-dnn/upgrade-to-09-11-01-personabar-error/

Which has good context with it.

But the links in the pager below are:

https://dnncommunity.org/forums/aft/3595

https://dnncommunity.org/forums/aft/3595/afpg/2

image

WillStrohl commented 1 year ago

Then the problem is more with the URLs that end up in the markup, and not with the overall generation/parsing of URLs? If only the UI is emitting these, that makes this an easier topic. 🤔

johnhenley commented 1 year ago

But the links in the pager below are:

https://dnncommunity.org/forums/aft/3595

https://dnncommunity.org/forums/aft/3595/afpg/2

image

Because there is no way to disable this "feature", some URLs are always put into the markup like this, rather than using the friendlier URL. Both are valid URLs and resolve to the same place. I'm suggesting they be consistent and not have two different URLs for the same topic.

Really the only difference is that the forum and forum group context are not included in the shorter url. Internally, the module really only needs the topic (&aft=) to compose a topic page. But having the forum and forum group (and the topic url itself) is what enables better friendly Urls.

WillStrohl commented 1 year ago

I mean, I think that any URL being emitted to the UI should be whatever we want indexed. However, short URLs are useful for sharing. Is there any reason to keep this feature for that purpose?

johnhenley commented 1 year ago

OK, let's leave it as is for now, but perhaps we consider putting the shorter URL behind a 'permalink' icon, and have the regular links be the longer/friendlier URLs?

WillStrohl commented 1 year ago

The longer links should definitely be the ones in the UI. I don't like calling the short URL a permalink though, because it's not the actual URL. If't just a short one that's easier to look at. It's still missing important context. :)