Streamline automatic slug & redirects handling
Issue #89115 introduce automatic slug handling as a new feature (which is great). However, there are a couple of things that need to be streamlined
- probably refactor or even merge SlugService into according DataHandler hook
- get rid of disableHook, enableHook calls (currently in SlugService) - but still avoid nested hook invocations (hook calling itself)
- enhance test cases, consider using YAML scenario having more levels in the page tree
- introduce sys_redirects loop detection, e.g.
a -> b -> c -> a(in this case (temporary) redirects created in between could be reverted)
- introduce UI component (settings currently only can be modified using config.yaml directly)
Updated by Sybille Peters 4 months ago
introduce sys_redirects loop detection, e.g. a -> b -> c -> a (in this case (temporary) redirects created in between could be reverted)
There are redirect loops, but there are also redirect chains (without loops), e.g.
a -> b -> c
Would be good if these can be handled as well, see #93288
I am not sure, if all this handling can or should be done on the fly. It would already help a lot if there were a command which would clean up all of these. (however the conflicts may be a bit difficult). I assume this should be much easier to implement.
There is already a redirect:cleanup command.