ich denke, ich habe den Fehler gefunden: die 'Doppelklammer' bei $this->schemaOrgAttendanceMode musste raus.
PHP-Code:
<?php
$schemaOrg = $this->getSchemaOrgData();
if ($this->hasDetails()) {
$schemaOrg['description'] = $this->rawHtmlToPlainText($this->details);
}
if ($this->schemaOrgAttendanceMode) {
$schemaOrg['eventAttendanceMode'] = 'https://schema.org/' . $this->schemaOrgAttendanceMode;
}
$this->addSchemaOrg($schemaOrg);
Als Ergebnis bekomme ich nun im Frontend:
PHP-Code:
[
{
"@context": "https:\/\/schema.org",
"@graph": [
{
"@type": "WebPage"
},
{
"@id": "#\/schema\/events\/1610",
"@type": "Event",
"description": "<p>Blutspendetermin für den Bezirk Horn<br><strong>Blutspenden in Eggenburg<\/strong><br>Bitte um Verständnis, dass die Annahme zur Blutspende spätestens bis 30 Minuten vor Ende der Blutspendeaktion erfolgen kann.<br>Änderungen vorbehalten! Aktuelle Termine und Änderungen finden Sie unter: www.blut.at oder 0800 190 190<br><br><strong>Sonntag, 27.11.2022<br><\/strong>09:00 bis 12:00<br>13:00 bis 15:00<\/p>",
"eventAttendanceMode": "https:\/\/schema.org\/OfflineEventAttendanceMode",
"image": {
"@id": "#\/schema\/image\/e3eaa367-323e-11ec-9415-76968b185605",
"@type": "ImageObject",
"contentUrl": "assets\/images\/9\/blutspenden-gib-dein-bestes-c77105f3.jpg",
"name": "Blutspendeaktion Eggenburg"
},
"location": {
"@type": "Place",
"address": {
"@type": "PostalAddress",
"description": "Mozartstrasse 10, 3730 Eggenburg"
},
"name": "Musikmittelschule Eggenburg"
},
"name": "Blutspendeaktion Eggenburg",
"startDate": "2022-11-27",
"url": "event-detail\/blutspendeaktion-eggenburg-27-11-2022.html"
}
]
},
{
"@context": "https:\/\/schema.contao.org",
"@graph": [
{
"@type": "Page",
"fePreview": false,
"groups": [],
"noSearch": false,
"pageId": 21,
"protected": false,
"title": "Blutspendeaktion Eggenburg"
}
]
}
]
next step: im Echtbetrieb testen und hoffen, dass Freund Google nicht mehr meckert
Lesezeichen