Sub-solution workbook pipeline on layout 5, fix element order in both importers

- New, deliberately separate pipeline for sub-solutions (markets and
  solutions must never break each other): generator
  vitec:generate-subsolution-workbooks (list from the page tree below
  /solutions, 39 workbooks, every sub-solution matched to its record),
  SubsolutionWorkbookImporter + CLI vitec:import-subsolution-workbooks,
  and a "Sub-Solutions" tab in the VITEC Import module with its own
  inbox migrations/subsolutions_xlsx_in/
- Targets the existing template 5 "Solution Detail" without changing
  it: hero element in colPos 1, the remaining sections in fixed order in
  colPos 0, found again by CType on re-import; existing empty sub-solution
  pages are switched to layout 5, missing ones created hidden;
  detail_page set on the solution record
- Workbook per the Figma "07 Solution Detail page": hero without video
  teaser, intro with headline and without learn-more/portfolio, extended
  icon list, own page-layout reference image
- Shared content elements: market hero/intro/insights relabelled
  "Market/Solution", market intro gains the optional intro_headline
  field (new column, requires extension:setup)
- Fix: DataHandler puts every NEW record with a positive pid at the top
  of its column, so pages built in one run came out reversed. Both
  importers now track the page order per colPos and write
  tt_content.sorting explicitly after the DataHandler run; re-applying
  repairs pages imported earlier (verified on the control-room
  sub-solution and sub-market page 443)
- migrations/fill_test_subsolution.php: realistic test content from
  vitec.com copy and images for the control-room sub-solution
- Docs section 5z
This commit is contained in:
orasche committed 2026-10-07 15:39:18 +02:00
1 parent 3d5459b8d2
commit 8e67f5db23
84 files changed
+1772 -35

No files matched your search

@@ -2,8 +2,10 @@
<xliff version="1.2">
<file source-language="en" datatype="plaintext" original="messages">
<body>
<trans-unit id="title"><source>VITEC · Market Intro</source></trans-unit>
<trans-unit id="description"><source>Sub-market template, section 2: intro text, image right, optional learn-more button, portfolio button toggle.</source></trans-unit>
<trans-unit id="title"><source>VITEC · Market/Solution Intro</source></trans-unit>
<trans-unit id="description"><source>Detail template section 2 (sub-markets AND sub-solutions): optional headline, intro text, image right, optional learn-more button, portfolio button toggle.</source></trans-unit>
<trans-unit id="intro_headline.label"><source>Headline (optional)</source></trans-unit>
<trans-unit id="intro_headline.description"><source>Used on solution detail pages; sub-market pages leave it empty.</source></trans-unit>
<trans-unit id="intro_text.label"><source>Intro text</source></trans-unit>
<trans-unit id="intro_text.description"><source>Plain text, max ~350 characters. No HTML.</source></trans-unit>
<trans-unit id="image.label"><source>Image (right)</source></trans-unit>