Megamenu: rail display for page trees, cache tags, editorial promo boxes
- Page-tree entries get a "Page tree display" field (columns | rail |
rail-compact), emitted as display + cardSize: Markets and Solutions
show their main pages as a list and the sub-pages as image cards on
hover. Page-tree items carry image (page media) and teaser (abstract)
from stage 2. Additive; front ends ignoring display render columns.
- vitec:attach-page-media gains --depth=2 and falls back to the page's
hero background before the grey placeholder; the 39 sub-solution
pages got their hero image as page media.
- MegamenuJsonRenderer tags every page carrying the menu with the menu
tables and tt_content_<uid>, so saving menu records refreshes all
pages instead of waiting for a full flush.
- Products catalog: drop catalog.news; both promo boxes ("Product
highlight", "Product news") are the entry's editorial teaser cards.
ProvideInsightsSpotlight back to its previous state.
- Spec v1.29 and v1.30 (header version corrected), README.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
9fb7f0ca77
commit
9211c8a395
10 files changed
+171
-37
No files matched your search
@@ -3,9 +3,9 @@
|
||||
| | |
|
||||
|---|---|
|
||||
| **Document identifier** | EVO‑VITEC‑HL‑001 |
|
||||
| **Version** | 1.26 |
|
||||
| **Version** | 1.30 |
|
||||
| **Status** | Released |
|
||||
| **Date** | 2026‑10‑26 |
|
||||
| **Date** | 2026‑11‑02 |
|
||||
| **Applies to** | `evomedien/vitec` on TYPO3 v14.3 (headless) |
|
||||
| **Owner** | evomedien — VITEC relaunch |
|
||||
|
||||
@@ -41,6 +41,8 @@
|
||||
| 1.26 | 2026‑10‑26 | **Interface change (additive).** Product detail resources band simplified (customer CR): the `resources` envelope gains **`sectionLayout`** — `50-50` (default) \| `33-33-33` — from the new per‑product select *Resources Section Layout* (Layout 1: Technical Highlights left, resource cards right, 50/50; Layout 2: highlights over two columns, cards in the third). Capabilities leave the band editorially; the TCA fields `capabilities`, `datasheets` and `downloads` are parked in the Misc tab — all three stay in the payload unchanged. The automatic newest‑datasheet/documentation cards remain deferred; meanwhile the manual card `restype` vocabulary gains `datasheet` and `brochure` — a pinned datasheet card links the download record and stays current because the download route always serves the newest file. |
|
||||
| 1.27 | 2026‑11‑02 | **Interface change (additive).** Product *Resources Section Layout* gained the value `hardware` (“Layout 3 - Hardware option”): `resources.sectionLayout = "hardware"` — Technical Highlights over two columns, no resource cards (`resources.items` is emitted empty even when cards are maintained, so they reappear on a switch back). |
|
||||
| 1.28 | 2026‑11‑02 | **Interface change (breaking for the products menu, additive elsewhere).** Product section rebuilt after the agency sitemap/menu prototype of 2026-11-02: 20 product overview pages `/products/<slug>` grouped by sysfolders (3 categories → 9 groups) below /products. The megamenu `catalog` payload is now **version 2**: `categories[].groups[].items[]` of type `page` (overview page with `productCount`/`products`/`image`) or `shortcut` (`target` indices), plus `viewAll` and `news`; the menu no longer lists products. Transitional v1 fields (`groups[].products` etc.) stay until the front end has switched. The product type-ahead (`?type=7385`) gained `overviews` and a per-product `overview` with menu path. |
|
||||
| 1.29 | 2026‑11‑02 | **Interface change (removal within the unreleased catalog v2).** `catalog.news` dropped (decision: no automatic news in the products menu). Both promo boxes of the products panel, "Product highlight" and "Product news", are the entry's editorial `teasers` (`kicker` = box label). Megamenu caching: pages carrying the menu are now tagged with the menu tables, so saving menu records refreshes every page; data read from the page tree still needs a cache flush. |
|
||||
| 1.30 | 2026‑11‑02 | **Interface change (additive).** Megamenu `pagetree` entries carry `display` (`columns` \| `rail`) and, for `rail`, `cardSize` (`regular` \| `compact`): Markets and Solutions switch to a left list with the sub-pages as image cards on hover. Page-tree items gained `image` (page media) and `teaser` (abstract) from stage 2; the sub-solution pages received their hero background as page media (sub-markets had page media already). |
|
||||
|
||||
This document is drafted in the style of, and adopts the terminology conventions of,
|
||||
ISO/IEC/IEEE 42010 (architecture description), ISO/IEC/IEEE 26514 (information for
|
||||
@@ -1220,7 +1222,6 @@ pages are reached from there.
|
||||
"version": 2,
|
||||
"search": { "endpoint": "/_json/?type=7385", "param": "q", "minChars": 2, "placeholder": "Search products" },
|
||||
"viewAll": { "title": "View all products", "link": "/products" },
|
||||
"news": [ { "title": "…", "date": "2026-10-28", "link": "/news/article/…", "teaser": "…", "image": {} } ],
|
||||
"categories": [ { "title": "IP Video Streaming, Distribution & KVM",
|
||||
"groups": [ { "title": "Encoders & Decoders",
|
||||
"items": [
|
||||
@@ -1241,9 +1242,11 @@ pages are reached from there.
|
||||
their number - a card without a resolvable product is not counted.
|
||||
- `image` (from content stage 2) is the overview page's first page media as a
|
||||
640 px WebP, `null` when none is set.
|
||||
- `news` are the latest news cards (same shape and query as the Insights
|
||||
spotlight, here two); the entry's `teasers` remain the editorial product
|
||||
highlight.
|
||||
- The promo boxes of the left column ("Product highlight", "Product news")
|
||||
are the entry's editorial `teasers` next to `catalog` (`kicker` = box
|
||||
label, plus `title`, `text`, `link`, `image`; designed for two, an empty
|
||||
array hides the column). There are no automatic news (`catalog.news` was
|
||||
dropped in v1.29).
|
||||
- Hidden pages and pages with *Hide in menu* drop out; order = page tree
|
||||
order. Version 1 (2026-10-09, sys_category groups with products) is no
|
||||
longer the source.
|
||||
@@ -1257,6 +1260,34 @@ pages are reached from there.
|
||||
by link); and a `teaser` (card text, plain) on every product. Do not build
|
||||
on these fields.
|
||||
|
||||
**Markets and Solutions menus (megamenu `layout: "pagetree"`, `display`
|
||||
since v1.30).** Page-tree entries build their `columns` live from the
|
||||
linked page (one column per child page, its children as `items`). The
|
||||
entry field *Page tree display* adds the presentation:
|
||||
|
||||
```json
|
||||
{ "title": "Markets", "link": "/markets", "layout": "pagetree",
|
||||
"display": "rail", "cardSize": "regular",
|
||||
"columns": [ { "title": "Transport", "link": "/markets/transport", "image": { "url": "…" },
|
||||
"items": [ { "title": "Airports", "link": "/markets/transport/airports",
|
||||
"image": { "url": "/fileadmin/_processed_/…webp", "width": 640, "height": 360, "alternative": "", "title": "" },
|
||||
"teaser": "…" } ] } ] }
|
||||
```
|
||||
|
||||
- `display: "columns"` (default; Support and every entry not switched):
|
||||
columns side by side as before. `display: "rail"`: the columns as a list
|
||||
on the left; hovering (or focusing) one shows its `items` as image cards
|
||||
on the right, the first column is preselected. `cardSize` (`regular` |
|
||||
`compact`, only with `rail`) sizes the cards - Solutions uses `compact`
|
||||
so five sub-solutions fit next to the list.
|
||||
- From content stage 2 every item carries `image` (first page media as a
|
||||
640 px WebP, `null` when none is set) and, when the page has an abstract,
|
||||
`teaser`. The sub-market pages already had page media; the 39 sub-solution
|
||||
pages got their hero background as page media
|
||||
(`vitec:attach-page-media --depth=2`); editors replace it in
|
||||
the page properties.
|
||||
- Additive: a front end that ignores `display` keeps rendering columns.
|
||||
|
||||
**Operations.** Indexing runs automatically: record and page saves enter the
|
||||
index queue, a scheduler task (Index Queue Worker, every 5 minutes) pushes them
|
||||
to Solr; the CLI command `vitec:solr-index` (with `--initialize` and `--debug`)
|
||||
@@ -1674,4 +1705,4 @@ remediation.
|
||||
- Header convention — the uniform header section across CEs, plugins and containers.
|
||||
- `Configuration/Sets/Vitecset/setup.typoscript` — the single TypoScript entry point.
|
||||
|
||||
*End of document EVO‑VITEC‑HL‑001 v1.28.*
|
||||
*End of document EVO‑VITEC‑HL‑001 v1.30.*
|
||||
Reference in new issue
Block a user