Product content check: live audit page under /product-check/
Standalone PHP page (public/product-check/index.php), deliberately NOT a plugin so the React front end needs no counterpart. Reads fresh from the DB on every request (settings.php PDO pattern): - alphabetical table of all products, header row with 14 field columns (hero/photos/og/video, the text fields, resources/datasheets/solutions), green check with count / red cross per cell, filled-count per column - every row expands to a detail pane: all texts rendered, all images as thumbnails with a click-to-enlarge lightbox, relations resolved (inline resources, datasheet/solution MM), flags, detail page link - refresh button reloads with a cache buster; noindex + no-store; refuses to serve on www.vitec.com The static badge view (migrations/build_product_audit.php -> /product-audit/) stays as is. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
ed3ced42b3
commit
d26c31e6d1
1 file changed
+1
-2
@@ -145,7 +145,7 @@ function listBlock(string $label, array $items): string
|
|||||||
|
|
||||||
// ---- columns ------------------------------------------------------------------
|
// ---- columns ------------------------------------------------------------------
|
||||||
|
|
||||||
$columns = ['Hero', 'Photos', 'OG', 'Video', 'Teaser', 'Subtitle', 'Description', 'Descr. 2', 'Highlights', 'Capabilities', 'Applications', 'Resources', 'Datasheets', 'Solutions'];
|
$columns = ['Hero', 'Photos', 'Video', 'Teaser', 'Subtitle', 'Description', 'Descr. 2', 'Highlights', 'Capabilities', 'Applications', 'Resources', 'Datasheets', 'Solutions'];
|
||||||
|
|
||||||
$filledPerColumn = array_fill_keys($columns, 0);
|
$filledPerColumn = array_fill_keys($columns, 0);
|
||||||
$rowsHtml = '';
|
$rowsHtml = '';
|
||||||
@@ -159,7 +159,6 @@ foreach ($products as $p) {
|
|||||||
$checks = [
|
$checks = [
|
||||||
'Hero' => [count($f['heroimage'] ?? []), true],
|
'Hero' => [count($f['heroimage'] ?? []), true],
|
||||||
'Photos' => [count($f['productimage'] ?? []), true],
|
'Photos' => [count($f['productimage'] ?? []), true],
|
||||||
'OG' => [count($f['ogimage'] ?? []), true],
|
|
||||||
'Video' => [count($f['videofile'] ?? []), true],
|
'Video' => [count($f['videofile'] ?? []), true],
|
||||||
'Teaser' => [filled($p['teaser']) ? 1 : 0, false],
|
'Teaser' => [filled($p['teaser']) ? 1 : 0, false],
|
||||||
'Subtitle' => [filled($p['subtitle']) ? 1 : 0, false],
|
'Subtitle' => [filled($p['subtitle']) ? 1 : 0, false],
|
||||||
|
|||||||
Reference in new issue
Block a user