Skip to content

Commit ec33c83

Browse files
author
Florian RIVAL
committed
[BUGFIX] Fix site configuration generation with TYPO V13
Fix issue ##28
1 parent 0fdea33 commit ec33c83

2 files changed

Lines changed: 23 additions & 3 deletions

File tree

Classes/Wizard/StateSiteConfiguration.php

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
namespace Oktopuce\SiteGenerator\Wizard;
1515

1616
use Doctrine\DBAL\Exception;
17+
use TYPO3\CMS\Core\Configuration\Exception\SiteConfigurationWriteException;
1718
use TYPO3\CMS\Core\Configuration\SiteWriter;
1819
use TYPO3\CMS\Core\DataHandling\DataHandler;
1920
use Psr\Log\LogLevel;
@@ -84,6 +85,8 @@ protected function createSiteConfiguration(BaseDto $siteData): void
8485
$newSiteConfiguration['base'] = $siteData->getDomain();
8586
$newSiteConfiguration['baseVariants'] = [];
8687
$newSiteConfiguration['languages']['0'] = $language;
88+
$newSiteConfiguration['errorHandling'] = [];
89+
$newSiteConfiguration['routes'] = [];
8790

8891
$siteIdentifier = $extensionConfiguration['siteIdentifierPrefix'] . md5((string) $rootSiteId);
8992

@@ -95,9 +98,19 @@ protected function createSiteConfiguration(BaseDto $siteData): void
9598
} else {
9699
$siteConfiguration = GeneralUtility::makeInstance(SiteWriter::class);
97100

98-
// Persist the configuration
99-
$siteConfiguration->createNewBasicSite($siteIdentifier, $newSiteConfiguration['rootPageId'], $newSiteConfiguration['base']);
100-
$siteConfiguration->writeSettings($siteIdentifier, $newSiteConfiguration);
101+
// Since V13, the site configuration is created with DataHandler::process_cmdmap() called in StateCopyModelSite
102+
// @See generateSiteConfigurationForRootPage() for identifier generation
103+
$entryPoint = 'autogenerated-' . $rootSiteId;
104+
$autoGenerateSiteIdentifier = $entryPoint . '-' . md5((string)$rootSiteId);
105+
106+
try {
107+
$siteConfiguration->rename($autoGenerateSiteIdentifier, $siteIdentifier);
108+
}
109+
catch (SiteConfigurationWriteException) {
110+
// Should never happen
111+
$siteConfiguration->createNewBasicSite($siteIdentifier, $newSiteConfiguration['rootPageId'], $newSiteConfiguration['base']);
112+
}
113+
$siteConfiguration->write($siteIdentifier, $newSiteConfiguration);
101114
}
102115

103116
// Update slugs

Documentation/Miscellaneous/Changelog/Index.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,13 @@
55
Change log
66
==========
77

8+
v3.2.7
9+
------
10+
11+
::
12+
13+
2025-11-07 [BUGFIX] Fix site configuration generation with TYPO V13 (Commit 20c4ebb by Florian RIVAL)
14+
815
v3.2.6
916
------
1017

0 commit comments

Comments
 (0)