Important: The route enhancer declares no default sorting 

Description 

The route enhancer in Configuration/Yaml/Routes.yaml maps the sorting of the program list into the path and declares no defaults for its two path variables. A variable that equals its default is left out of a generated path, so with defaults of title and asc a link with the default sorting would be generated as the page URL without arguments.

That page URL is where the content element's preset categories and sorting apply. The program list redirects every filter submission to a URL carrying the sorting (Feature: Program filter selections have a URL); with defaults, a visitor who cleared a preset category and kept the default sorting would be sent to that page URL and get the preset category back.

What follows from the enhancer declaring none:

  • The default sorting is generated as /title/asc like every other sorting, and the page URL without arguments stays the preset list.
  • A path with the sorting field alone, such as /last-updated, does not resolve; both segments are required.
  • A link to the list that carries no argument at all - the action URL of the plugin's own form, a hand written reset link - does not enter a route either. It keeps its plugin arguments in the query string, with a cHash, and shows the list as the content element presets it. A link with a filter and no sorting takes the filter route of Feature: The route enhancer maps the filter.

The file first became usable in 2.4 (Important: The shipped route enhancer configuration can be imported), and 2.4 ships it without defaults as well, so the paths it generates keep resolving after the update to 3.0 on English pages. On a German page the sorting values are translated now, see Important: The route enhancer moved and translates its values.

Affected Installations 

Sites that declare their own route enhancer for the program list with defaults for the sorting: they have the problem described above and should remove the defaults.