From 77a59bc7ba70c1d7a7ae7b6e7e532ade04ea1365 Mon Sep 17 00:00:00 2001 From: Benni Mack <benni@typo3.org> Date: Fri, 8 Dec 2017 08:10:02 +0100 Subject: [PATCH] [!!!][TASK] Drop support for &id=23.1 (id.type) syntax TYPO3 previously allowed to hand over the typeNum parameter via index.php?id=pageId.typeNum which is dropped now, as "index.php?id=pageId&type=typeNum" should be used, no more hidden magic. Resolves: #83265 Releases: master Change-Id: I218812b462d3ccb3ee0c35f0c8507957f0002ac8 Reviewed-on: https://review.typo3.org/54980 Tested-by: TYPO3com <no-reply@typo3.com> Reviewed-by: Stefan Neufeind <typo3.neufeind@speedpartner.de> Tested-by: Stefan Neufeind <typo3.neufeind@speedpartner.de> Reviewed-by: Susanne Moog <susanne.moog@typo3.org> Tested-by: Susanne Moog <susanne.moog@typo3.org> --- ...tingTypeNumViaIdGETParameterInFrontend.rst | 38 +++++++++++++++++++ .../TypoScriptFrontendController.php | 8 ---- 2 files changed, 38 insertions(+), 8 deletions(-) create mode 100644 typo3/sysext/core/Documentation/Changelog/master/Breaking-83265-DroppedSupportForSettingTypeNumViaIdGETParameterInFrontend.rst diff --git a/typo3/sysext/core/Documentation/Changelog/master/Breaking-83265-DroppedSupportForSettingTypeNumViaIdGETParameterInFrontend.rst b/typo3/sysext/core/Documentation/Changelog/master/Breaking-83265-DroppedSupportForSettingTypeNumViaIdGETParameterInFrontend.rst new file mode 100644 index 000000000000..27ac1ad6be3b --- /dev/null +++ b/typo3/sysext/core/Documentation/Changelog/master/Breaking-83265-DroppedSupportForSettingTypeNumViaIdGETParameterInFrontend.rst @@ -0,0 +1,38 @@ +.. include:: ../../Includes.txt + +========================================================================================= +Breaking: #83265 - Dropped support for setting "typeNum" via id GET Parameter in Frontend +========================================================================================= + +See :issue:`83265` + +Description +=========== + +The functionality to add the possible page typeNum to the "id" GET/POST Parameter has been removed. + +Previously it was possible to call TYPO3 Frontend via `index.php?id=23.13` (separated with a dot) which resolved in the page ID being +"23" and the typeNum set to 13. + +This functionality is a leftover from 2003, to shorten the URL and avoid multiple GET parameters. Instead, today it is common to use +`index.php?id=23&type=13` which TYPO3 uses internally everywhere since TYPO3 v4.0. + + +Impact +====== + +Calling Frontend URLs via `index.php?id=23.13" - adding the typeNum with a dot - will result in a PageNotFound exception. + + +Affected Installations +====================== + +Installations with multiple "typeNum" TypoScript values, and with very old settings and custom built URLs for the Frontend. + + +Migration +========= + +Use typolink functionality in TypoScript, or Fluid to build your URLs properly in the format of `index.php?id=pageId&type=typeNum`. + +.. index:: Frontend, NotScanned \ No newline at end of file diff --git a/typo3/sysext/frontend/Classes/Controller/TypoScriptFrontendController.php b/typo3/sysext/frontend/Classes/Controller/TypoScriptFrontendController.php index ab205b42b4d4..8c33e933d0e1 100644 --- a/typo3/sysext/frontend/Classes/Controller/TypoScriptFrontendController.php +++ b/typo3/sysext/frontend/Classes/Controller/TypoScriptFrontendController.php @@ -1287,14 +1287,6 @@ class TypoScriptFrontendController implements LoggerAwareInterface $this->initUserGroups(); // Sets sys_page where-clause $this->setSysPageWhereClause(); - // Splitting $this->id by a period (.). - // First part is 'id' and second part (if exists) will overrule the &type param - $idParts = explode('.', $this->id, 2); - $this->id = $idParts[0]; - if (isset($idParts[1])) { - $this->type = $idParts[1]; - } - // If $this->id is a string, it's an alias $this->checkAndSetAlias(); // The id and type is set to the integer-value - just to be sure... -- GitLab