diff --git a/migrations/set_solutions_description_20261110.php b/migrations/set_solutions_description_20261110.php new file mode 100644 index 0000000..02bb815 --- /dev/null +++ b/migrations/set_solutions_description_20261110.php @@ -0,0 +1,11 @@ +PDO::ERRMODE_EXCEPTION]); +$desc='Explore VITEC video solutions for control rooms and command centres, real-time monitoring, video distribution and streaming, capture and encoding, video walls, digital signage, enterprise communications and security.'; +$st=$pdo->prepare("UPDATE pages SET description=?, tstamp=UNIX_TIMESTAMP() WHERE uid=2 AND (description IS NULL OR description='')"); +$st->execute([$desc]); +echo "Seite 2 (/solutions): ".$st->rowCount()." Zeile(n) aktualisiert\n"; diff --git a/packages/vitec/Classes/Seo/VitecMetaHandler.php b/packages/vitec/Classes/Seo/VitecMetaHandler.php index dd4ffe0..c087a85 100644 --- a/packages/vitec/Classes/Seo/VitecMetaHandler.php +++ b/packages/vitec/Classes/Seo/VitecMetaHandler.php @@ -145,9 +145,14 @@ class VitecMetaHandler extends MetaHandler // "Aligo | VITEC" (Seobility: 456 titles "zu kurz") becomes // "Aligo | AV over IP & KVM | VITEC"; only for plain pages without an // editor-set SEO title, never for record detail pages. + // An SEO title that merely repeats the page title (the import copied + // title -> seo_title) counts as "not maintained". + $seoTitle = trim((string)($page['seo_title'] ?? '')); + $pageTitle = trim((string)($page['title'] ?? '')); + $seoTitleMaintained = $seoTitle !== '' && mb_strtolower($seoTitle) !== mb_strtolower($pageTitle); if ($newsUid === 0 && $productArg === '' && $usecaseUid === 0 && $title !== '' && mb_strlen($title) < 30 - && trim((string)($page['seo_title'] ?? '')) === '' + && !$seoTitleMaintained ) { $parentTitle = $this->parentTitle($pageInfo); if ($parentTitle !== '' && mb_stripos($title, $parentTitle) === false) {