Geschrieben von Chris Schön am Apr 13, 2024
In der heutigen digitalen Welt sind strukturierte Daten unerlässlich für eine effektive SEO-Strategie. Das JSON LD Schema API Modul bietet eine innovative Lösung für Drupal-Entwickler, Produktverantwortliche und potenzielle Kunden, die ihre Webpräsenz optimieren möchten.
Das Modul vereinfacht die Implementierung von strukturierten Daten gemäß Schema.org erheblich und zeichnet sich durch Benutzerfreundlichkeit und Effizienz aus. Es ermöglicht Entwicklern, JsonLD strukturen auf Entity-Ebene zu definieren, die automatisch im HTML-Head platziert werden, und baut auf dem robusten Schema-org-Package von Spatie auf.
Schema.org ist von führenden Suchmaschinen wie Google und Bing als universelles Vokabular für strukturierte Daten anerkannt. JSON-LD verwendet eine klare JSON-Syntax, die leicht in HTML eingebettet werden kann, um die Interpretation durch Suchmaschinen zu verbessern. Diese Kombination optimiert die SEO, indem sie die Platzierung und Sichtbarkeit in Suchergebnissen durch Rich Snippets erhöht.
Das Modul strukturiert Datenblöcke deutlich und unterstützt die Wiederverwendbarkeit, was die Implementierung von Features wie Breadcrumbs vereinfacht. Es trennt Content Management von der Datenstrukturierung, wodurch Entwickler strukturierte Daten effizient verwalten können, ohne dass Content-Editoren involviert sind.
Das folgende Beispiel zeigt, wie ein einfaches JSON LD Schema Plugin für einen Artikeltypen definiert werden kann, wobei das Schema.org Vokabular verwendet wird:
/**
* Provides a JSON-LD Schema.org snippet for "Article" content type.
*
* @JsonLdEntity(
* label = "Article",
* id = "json_ld_schema_article",
* )
*/
class ArticleJsonLd extends JsonLdEntityBase {
/**
* {@inheritdoc}
*/
public function isApplicable(EntityInterface $entity, $view_mode) {
return $entity->getEntityTypeId() === 'node' && $entity->bundle() === 'article';
}
/**
* {@inheritdoc}
*/
public function getData(EntityInterface $entity, $view_mode): Type {
return Schema::article()
->name($entity->label())
->description($entity->field_summary->value)
->author([
Schema::person()->name($entity->field_author->entity->label()),
])
->publisher([
Schema::organization()->name("Example Publisher")
])
->datePublished($entity->field_date->value)
->dateModified($entity->field_modified_date->value)
->image($entity->field_image->entity->uri->value);
}
}
Um dieses Plugin zu nutzen, muss es im entsprechenden Modulverzeichnis unter src/Plugin/json_ld_schema/Entity
abgelegt werden. Nachdem das Modul, in dem sich das Plugin befindet, installiert oder aktualisiert wurde, erkennt Drupal das neue Plugin automatisch und wendet es auf alle entsprechenden Inhalte an, wenn diese gerendert werden.
Dieses Beispiel demonstriert die Leistungsfähigkeit des JSON LD Schema API Moduls, indem es zeigt, wie einfach Entwickler komplexe strukturierte Daten implementieren können, die direkt die Sichtbarkeit in Suchmaschinen verbessern. Es betont die Modularität und Erweiterbarkeit von Drupal und wie Entwickler diese nutzen können, um effiziente, SEO-optimierte Websites zu erstellen.
Fast jede Website kann von strukturierten Daten profitieren, was das JSON LD Schema API Modul zu einem wesentlichen Tool für Drupal macht. Es verbessert nicht nur SEO, sondern bestätigt auch die Flexibilität und Skalierbarkeit von Drupal.
Das Modul demonstriert, wie Entwickler strukturierte Daten effizient pflegen können, ohne Content-Editoren oder Kunden zu überlasten. Es ist ein unverzichtbares Instrument in der digitalen Werkzeugkiste eines Entwicklers und revolutioniert unser Verständnis von SEO und Webentwicklung.
Dank an die Maintainer
Ein besonderer Dank gilt den Hauptmaintainern acbramley (Andrew Bramley), fenstrat (John Fenwick), und sam152 (Sam Becker), deren Engagement das Modul zu einem zuverlässigen Werkzeug gemacht hat.