Page content check for markets and solutions (vitec_pagecheck)
Sibling of the product check (decision Harry 2026-11-13): new content element vitec_pagecheck with a FlexForm scope (markets | solutions) and PageCheckService/PageCheckJsonRenderer. Overview = one row per page of the tree (11 markets + 24 sub-markets, 8 solution groups + 39 sub-solutions) with 18 checks taken from the page elements (hero image and subline, lead, intro text/image/CTA, cards with visuals, testimonials, products, insights text/cover/CTA, logos, CTA banner), the page properties (meta description, OG image, page media) and the market/solution record behind the page; columns a page type does not have come as ok null. ?check=<pageUid> delivers the page detail (elements in page order with texts, links, images, FlexForm settings; SEO, media, record, children). Always USER_INT, check is cHash-excluded already. New command vitec:pagecheck-pages created /markets/market-check (608) and /solutions/solution-check (609) from the product-check page properties; both live on DEV, rendering is front end work. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
1 parent
47c8e2902f
commit
20bcbeb731
9 files changed
+913
No files matched your search
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<T3DataStructure>
|
||||
<meta>
|
||||
<langDisable>1</langDisable>
|
||||
</meta>
|
||||
<sheets>
|
||||
<sDEF>
|
||||
<ROOT>
|
||||
<sheetTitle>Page Content Check</sheetTitle>
|
||||
<type>array</type>
|
||||
<el>
|
||||
<settings.scope>
|
||||
<label>Page tree to audit</label>
|
||||
<description>Markets = the 11 markets and their sub-markets below /markets. Solutions = the 8 solution groups and their sub-solutions below /solutions.</description>
|
||||
<config>
|
||||
<type>select</type>
|
||||
<renderType>selectSingle</renderType>
|
||||
<items>
|
||||
<numIndex index="0">
|
||||
<label>Markets and sub-markets</label>
|
||||
<value>markets</value>
|
||||
</numIndex>
|
||||
<numIndex index="1">
|
||||
<label>Solutions and sub-solutions</label>
|
||||
<value>solutions</value>
|
||||
</numIndex>
|
||||
</items>
|
||||
<default>markets</default>
|
||||
</config>
|
||||
</settings.scope>
|
||||
</el>
|
||||
</ROOT>
|
||||
</sDEF>
|
||||
</sheets>
|
||||
</T3DataStructure>
|
||||
@@ -32,6 +32,8 @@ services:
|
||||
# ProductCheckJsonRenderer (TypoScript userFunc, no DI there).
|
||||
Evomedien\Vitec\Service\ProductCheckService:
|
||||
public: true
|
||||
Evomedien\Vitec\Service\PageCheckService:
|
||||
public: true
|
||||
|
||||
# SSR dashboard tiles (the WidgetConfigurationInterface argument is
|
||||
# injected by the dashboard compiler pass via the tag).
|
||||
|
||||
@@ -114,6 +114,21 @@ tt_content {
|
||||
}
|
||||
}
|
||||
|
||||
# Page Content Check - the market / solution page audit as data (pages
|
||||
# /markets/market-check, /solutions/solution-check). Always USER_INT, see PageCheckJsonRenderer.
|
||||
vitec_pagecheck < lib.contentElementWithHeader
|
||||
vitec_pagecheck {
|
||||
fields {
|
||||
content {
|
||||
fields {
|
||||
pagecheck = USER
|
||||
pagecheck.userFunc = Evomedien\Vitec\UserFunc\PageCheckJsonRenderer->render
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# EXT:solr search results as JSON - the search endpoint for the React frontend
|
||||
solr_pi_results < lib.contentElementWithHeader
|
||||
solr_pi_results {
|
||||
|
||||
@@ -37,6 +37,10 @@ use TYPO3\CMS\Extbase\Utility\ExtensionUtility;
|
||||
'plugins',
|
||||
'Live audit of every product record: one row per product, one check per content field, details per row. Place once on /products/product-check.'
|
||||
);
|
||||
// Page content audit for the market and solution trees (2026-11-13):
|
||||
// scope (markets | solutions) via FlexForm, data from PageCheckService.
|
||||
$registerPluginWithFlexForm('Pagecheck', 'Page Content Check (markets / solutions audit)', 'FILE:EXT:vitec/Configuration/FlexForms/Pagecheck.xml', 'vitec-plugin-productlist');
|
||||
|
||||
$registerPluginWithFlexForm('Simplecard', 'Simple Card', 'FILE:EXT:vitec/Configuration/FlexForms/Simplecard.xml', 'vitec-plugin-simplecard');
|
||||
$registerPluginWithFlexForm('Productshow', 'Show Single Product', 'FILE:EXT:vitec/Configuration/FlexForms/Productshow.xml', 'vitec-plugin-productshow');
|
||||
$registerPluginWithFlexForm('Usecaseshow', 'Single Success Story', 'FILE:EXT:vitec/Configuration/FlexForms/Usecase.xml', 'vitec-plugin-usecaseshow');
|
||||
|
||||
@@ -40,6 +40,15 @@ mod {
|
||||
CType = vitec_productcheck
|
||||
}
|
||||
}
|
||||
pagecheck {
|
||||
iconIdentifier = vitec-plugin-productlist
|
||||
title = Page Content Check (markets / solutions audit)
|
||||
description = Live audit of the market or solution page tree - one row per page, one check per content slot. Internal pages /markets/market-check and /solutions/solution-check.
|
||||
tt_content_defValues {
|
||||
CType = vitec_pagecheck
|
||||
}
|
||||
}
|
||||
|
||||
productshow {
|
||||
iconIdentifier = vitec-plugin-productshow
|
||||
title = Show single VITEC Product
|
||||
|
||||
Reference in new issue
Block a user