[FEATURE] Introduce Page-based URL handling 94/57994/21
authorBenni Mack <benni@typo3.org>
Wed, 22 Aug 2018 21:08:22 +0000 (23:08 +0200)
committerOliver Hader <oliver.hader@typo3.org>
Thu, 23 Aug 2018 19:09:00 +0000 (21:09 +0200)
commit6308b461916daaccc2e08f60d069c8082f1390c9
treef90d9f570dd644b1ddd1fbc8cb6c0d3a718b1e0e
parente85d86f40581e50eca79b1e022ba8f653aef9ee5
[FEATURE] Introduce Page-based URL handling

This feature adds a new database field "pages.slug" which
allows to fill the database with URL segments which can then
be resolved and built with for URLs for a specific page.

On top, when a site is found with a proper "slug", the
PageRouter of a site now resolves a /home/my-products/
to the correct page ID.

Next steps:
- Add URL enhancers API to allow to further resolve more parts.

Resolves: #85947
Releases: master
Change-Id: Ic64a758e847520b9a8dfc8b484c7613c9ba1f869
Reviewed-on: https://review.typo3.org/57994
Tested-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Richard Haeser <richard@maxserv.com>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
14 files changed:
composer.json
composer.lock
typo3/sysext/backend/Classes/Form/FormDataProvider/SiteResolving.php
typo3/sysext/backend/Classes/Utility/BackendUtility.php
typo3/sysext/core/Classes/Routing/PageRouter.php [new file with mode: 0644]
typo3/sysext/core/Classes/Routing/PageUriBuilder.php
typo3/sysext/core/Classes/Site/Entity/Site.php
typo3/sysext/core/Configuration/TCA/pages.php
typo3/sysext/core/Documentation/Changelog/master/Feature-85947-PageBasedURLHandling.rst [new file with mode: 0644]
typo3/sysext/core/Resources/Private/Language/locallang_tca.xlf
typo3/sysext/core/composer.json
typo3/sysext/core/ext_tables.sql
typo3/sysext/frontend/Classes/Middleware/SiteResolver.php
typo3/sysext/frontend/Tests/Unit/Middleware/SiteResolverTest.php