From 0ba2db17fc7d1f3bfa4f3f8511dcf797aa8cc047 Mon Sep 17 00:00:00 2001 From: Travis Risner Date: Thu, 16 Oct 2025 15:55:00 -0500 Subject: [PATCH 01/10] append root urls to schema images --- plugins/system/schemaorg/src/Extension/Schemaorg.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/plugins/system/schemaorg/src/Extension/Schemaorg.php b/plugins/system/schemaorg/src/Extension/Schemaorg.php index 1652c79d47025..4ee9bdb6d5be8 100644 --- a/plugins/system/schemaorg/src/Extension/Schemaorg.php +++ b/plugins/system/schemaorg/src/Extension/Schemaorg.php @@ -435,6 +435,10 @@ public function onBeforeCompileHead(BeforeCompileHeadApplicationEvent $event): v $localSchema->set('isPartOf', ['@id' => $webPageId]); $itemSchema = $localSchema->toArray(); + if (!empty($itemSchema['image'])) { + $itemSchema['image'] = Uri::root() . HTMLHelper::_('cleanImageUrl', $itemSchema['image'])->url; + } + $baseSchema['@graph'][] = $itemSchema; } From a36c30912750a3526f7aef9ec774136a12e19559 Mon Sep 17 00:00:00 2001 From: Travis Risner Date: Fri, 17 Oct 2025 07:23:51 -0500 Subject: [PATCH 02/10] Update plugins/system/schemaorg/src/Extension/Schemaorg.php Co-authored-by: Richard Fath --- plugins/system/schemaorg/src/Extension/Schemaorg.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/system/schemaorg/src/Extension/Schemaorg.php b/plugins/system/schemaorg/src/Extension/Schemaorg.php index 4ee9bdb6d5be8..b2fce4b2d6416 100644 --- a/plugins/system/schemaorg/src/Extension/Schemaorg.php +++ b/plugins/system/schemaorg/src/Extension/Schemaorg.php @@ -435,11 +435,11 @@ public function onBeforeCompileHead(BeforeCompileHeadApplicationEvent $event): v $localSchema->set('isPartOf', ['@id' => $webPageId]); $itemSchema = $localSchema->toArray(); + if (!empty($itemSchema['image'])) { $itemSchema['image'] = Uri::root() . HTMLHelper::_('cleanImageUrl', $itemSchema['image'])->url; } - $baseSchema['@graph'][] = $itemSchema; } } From 452ae6dcf6ad96e04e257a35ab2c704b9a12d390 Mon Sep 17 00:00:00 2001 From: Travis Risner Date: Mon, 27 Oct 2025 08:00:21 -0500 Subject: [PATCH 03/10] only match if protocol doesnt exist/fix syntax error --- plugins/system/schemaorg/src/Extension/Schemaorg.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/plugins/system/schemaorg/src/Extension/Schemaorg.php b/plugins/system/schemaorg/src/Extension/Schemaorg.php index b2fce4b2d6416..81e94352ed583 100644 --- a/plugins/system/schemaorg/src/Extension/Schemaorg.php +++ b/plugins/system/schemaorg/src/Extension/Schemaorg.php @@ -437,7 +437,11 @@ public function onBeforeCompileHead(BeforeCompileHeadApplicationEvent $event): v $itemSchema = $localSchema->toArray(); if (!empty($itemSchema['image'])) { - $itemSchema['image'] = Uri::root() . HTMLHelper::_('cleanImageUrl', $itemSchema['image'])->url; + $url = $itemSchema['image']->url ?? ''; + + if (!preg_match('#^(https?:)?//#i', $url)) { + $itemSchema['image'] = Uri::root() . HTMLHelper::_('cleanImageUrl', $url); + } } $baseSchema['@graph'][] = $itemSchema; From 7a55118dcc83cd10cf17c23e63de48d2a5b7581f Mon Sep 17 00:00:00 2001 From: Travis Risner Date: Mon, 27 Oct 2025 08:19:48 -0500 Subject: [PATCH 04/10] cs --- plugins/system/schemaorg/src/Extension/Schemaorg.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/system/schemaorg/src/Extension/Schemaorg.php b/plugins/system/schemaorg/src/Extension/Schemaorg.php index 81e94352ed583..871bc59e2bea9 100644 --- a/plugins/system/schemaorg/src/Extension/Schemaorg.php +++ b/plugins/system/schemaorg/src/Extension/Schemaorg.php @@ -441,7 +441,7 @@ public function onBeforeCompileHead(BeforeCompileHeadApplicationEvent $event): v if (!preg_match('#^(https?:)?//#i', $url)) { $itemSchema['image'] = Uri::root() . HTMLHelper::_('cleanImageUrl', $url); - } + } } $baseSchema['@graph'][] = $itemSchema; From 6ee41a2038902edf3bb17e296c7f32ac5a994ac1 Mon Sep 17 00:00:00 2001 From: Travis Risner Date: Mon, 27 Oct 2025 08:38:32 -0500 Subject: [PATCH 05/10] cs --- plugins/system/schemaorg/src/Extension/Schemaorg.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/system/schemaorg/src/Extension/Schemaorg.php b/plugins/system/schemaorg/src/Extension/Schemaorg.php index 871bc59e2bea9..283ede601a8cd 100644 --- a/plugins/system/schemaorg/src/Extension/Schemaorg.php +++ b/plugins/system/schemaorg/src/Extension/Schemaorg.php @@ -441,7 +441,7 @@ public function onBeforeCompileHead(BeforeCompileHeadApplicationEvent $event): v if (!preg_match('#^(https?:)?//#i', $url)) { $itemSchema['image'] = Uri::root() . HTMLHelper::_('cleanImageUrl', $url); - } + } } $baseSchema['@graph'][] = $itemSchema; From cef58d1a7d40423230d7442402fdf8af29aa694a Mon Sep 17 00:00:00 2001 From: Travis Risner Date: Mon, 27 Oct 2025 08:44:48 -0500 Subject: [PATCH 06/10] cs --- plugins/system/schemaorg/src/Extension/Schemaorg.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/system/schemaorg/src/Extension/Schemaorg.php b/plugins/system/schemaorg/src/Extension/Schemaorg.php index 283ede601a8cd..42f7470d0dd31 100644 --- a/plugins/system/schemaorg/src/Extension/Schemaorg.php +++ b/plugins/system/schemaorg/src/Extension/Schemaorg.php @@ -441,7 +441,7 @@ public function onBeforeCompileHead(BeforeCompileHeadApplicationEvent $event): v if (!preg_match('#^(https?:)?//#i', $url)) { $itemSchema['image'] = Uri::root() . HTMLHelper::_('cleanImageUrl', $url); - } + } } $baseSchema['@graph'][] = $itemSchema; From c1b0f02386314c1c2e1d1fb0fa8a84714925ec61 Mon Sep 17 00:00:00 2001 From: Travis Risner Date: Fri, 31 Oct 2025 09:12:14 -0500 Subject: [PATCH 07/10] use base instead --- plugins/system/schemaorg/src/Extension/Schemaorg.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/system/schemaorg/src/Extension/Schemaorg.php b/plugins/system/schemaorg/src/Extension/Schemaorg.php index 42f7470d0dd31..364dbaa607b3b 100644 --- a/plugins/system/schemaorg/src/Extension/Schemaorg.php +++ b/plugins/system/schemaorg/src/Extension/Schemaorg.php @@ -440,7 +440,7 @@ public function onBeforeCompileHead(BeforeCompileHeadApplicationEvent $event): v $url = $itemSchema['image']->url ?? ''; if (!preg_match('#^(https?:)?//#i', $url)) { - $itemSchema['image'] = Uri::root() . HTMLHelper::_('cleanImageUrl', $url); + $itemSchema['image'] = Uri::base() . HTMLHelper::_('cleanImageUrl', $url); } } From e11335790904f40d54eacc2c2af6d76453d1bab5 Mon Sep 17 00:00:00 2001 From: Travis Risner Date: Fri, 31 Oct 2025 09:15:17 -0500 Subject: [PATCH 08/10] ensure url is not empty --- plugins/system/schemaorg/src/Extension/Schemaorg.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/system/schemaorg/src/Extension/Schemaorg.php b/plugins/system/schemaorg/src/Extension/Schemaorg.php index 364dbaa607b3b..06831e849fdd0 100644 --- a/plugins/system/schemaorg/src/Extension/Schemaorg.php +++ b/plugins/system/schemaorg/src/Extension/Schemaorg.php @@ -436,7 +436,7 @@ public function onBeforeCompileHead(BeforeCompileHeadApplicationEvent $event): v $itemSchema = $localSchema->toArray(); - if (!empty($itemSchema['image'])) { + if (isset($itemSchema['image']->url) && !empty($itemSchema['image']->url)) { $url = $itemSchema['image']->url ?? ''; if (!preg_match('#^(https?:)?//#i', $url)) { From 1a656653460b102fd3b3691b08a3d86ac6b060de Mon Sep 17 00:00:00 2001 From: Travis Risner Date: Fri, 31 Oct 2025 09:22:16 -0500 Subject: [PATCH 09/10] apply to correct item --- plugins/system/schemaorg/src/Extension/Schemaorg.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/system/schemaorg/src/Extension/Schemaorg.php b/plugins/system/schemaorg/src/Extension/Schemaorg.php index 06831e849fdd0..a10380e96a707 100644 --- a/plugins/system/schemaorg/src/Extension/Schemaorg.php +++ b/plugins/system/schemaorg/src/Extension/Schemaorg.php @@ -440,7 +440,7 @@ public function onBeforeCompileHead(BeforeCompileHeadApplicationEvent $event): v $url = $itemSchema['image']->url ?? ''; if (!preg_match('#^(https?:)?//#i', $url)) { - $itemSchema['image'] = Uri::base() . HTMLHelper::_('cleanImageUrl', $url); + $itemSchema['image']->url = Uri::root() . HTMLHelper::_('cleanImageUrl', $url); } } From cd0c8e2a5f92397f71d239fd6edab83b110dd1e1 Mon Sep 17 00:00:00 2001 From: Travis Risner Date: Fri, 31 Oct 2025 13:31:33 -0500 Subject: [PATCH 10/10] rework image setting --- plugins/system/schemaorg/src/Extension/Schemaorg.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/system/schemaorg/src/Extension/Schemaorg.php b/plugins/system/schemaorg/src/Extension/Schemaorg.php index a10380e96a707..61f27f0e23666 100644 --- a/plugins/system/schemaorg/src/Extension/Schemaorg.php +++ b/plugins/system/schemaorg/src/Extension/Schemaorg.php @@ -436,11 +436,11 @@ public function onBeforeCompileHead(BeforeCompileHeadApplicationEvent $event): v $itemSchema = $localSchema->toArray(); - if (isset($itemSchema['image']->url) && !empty($itemSchema['image']->url)) { - $url = $itemSchema['image']->url ?? ''; + if (!empty($itemSchema['image'])) { + $url = $itemSchema['image'] ?? ''; if (!preg_match('#^(https?:)?//#i', $url)) { - $itemSchema['image']->url = Uri::root() . HTMLHelper::_('cleanImageUrl', $url); + $itemSchema['image'] = Uri::root() . HTMLHelper::_('cleanImageUrl', $url)->url; } }