wStringconverter::escapeForJsonLd
Dekodiert HTML-Sonderzeichen vollständig für JSON-LD
Funktionsaufruf
String escapeForJsonLd($str, $options = array())
Parameter
| Parameter | Beschreibung |
|---|---|
| str | String |
Diese Funktion wurde speziell für die Aufbereitung von Werten in JSON-LD-Strukturen entwickelt. Sie dekodiert HTML-Sonderzeichen vollständig und sorgt dafür, dass Inhalte unabhängig von ihrem Maskierungsgrad in einer für JSON-LD gültigen, sauberen Form vorliegen.
Beispiel: Beispiel: BreadcrumbList als JSON-LD mit foreach-Schleife
Quelltext
<?php
<wsl:php>
/* Initialisierung */
$jsonLdBreadcrumbList = array();
$listItemPosition = 1;
/* Beispiel: Pfad-Hierarchie der aktuellen Seite */
$breadcrumbPaths = array(
'/', // Startseite
'/produkte/', // Kategorie
'/produkte/elektronik/', // Unterkategorie
'/produkte/elektronik/laptop/' // Aktuelle Seite
);
/* Basis-URL der Website */
$baseUrl = 'https://www.domain.dd';
/* Zusammenbau der JSON-Objekte */
foreach ($breadcrumbPaths as $wDocumentPath) {
// Vollständigen Link aufbauen
$linkFull = $baseUrl . $wDocumentPath;
// Eintrag dem Array hinzufügen
$jsonLdBreadcrumbList[] = array(
'@type' => 'listItem',
'position' => $listItemPosition++,
'item' => array(
'@id' => $linkFull,
'name' => wStringconverter::escapeForJsonLd(wDocumentData::getData($wDocumentPath, 'title')
)
)
);
}
/*Schreiben des JSON-LD-Textes*/
print '<script type="application/ld+json">
{"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement":'.json_encode($jsonLdBreadcrumbList, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP).'
}
</script>
</wsl:php>
?>Hinweis
Beim Einsatz von Framework-Funktionen in eigenen Skripten beachten Sie bitte den Artikel "So verwenden Sie das PHP-Framework in eigenen Scripten".
Wenn Sie eine Funktion innerhalb einer Weblication® Seite z.B. über das PHP-Quelltext Element oder in einem XSL-Template über wsl:php einbinden, muss das Framework über die grid.php nicht mehr referenziert werden.