it-swarm.com.de

SEO schema.org Breadcrumb mit Anzeige: keine?

Hintergrund/Motivation

Ich verwalte ein Drupal Modul ( Crumbs ), das Brotkrumen für eine Drupal Site berechnet.

Ich möchte diese Semmelbrösel SEO-freundlich machen, indem ich z. Semantisches Metadaten-Markup für schema.org. Im Idealfall sollte dies auf jeder Site automatisch funktionieren, unabhängig davon, welches Thema aktiv ist.

Andererseits möchte ich keine Themen stören, die den HTML-Code eines Breadcrumb überschreiben oder den Breadcrumb-HTML-Code mit CSS als Ziel haben.

Das heißt, ich bin in einem Konflikt. Entweder steuert das Modul den HTML-Code oder das Thema, aber beides ist schwierig.

Also dachte ich an eine Problemumgehung: Habe einen versteckten, SEO-optimierten Breadcrumb mit "display: none;", der vom Modul generiert wird, und einen sichtbaren Breadcrumb, bei dem der HTML-Code vom Thema generiert wird (basierend auf strukturierten Daten aus dem Modul).

Frage

Wenn ich einen ausgeblendeten, SEO-optimierten Breadcrumb und einen sichtbaren, nicht SEO-optimierten Breadcrumb habe, verringert dies den Effekt auf SEO?

Afaik, der einzige wirkliche Effekt ist, dass der Breadcrumb im Suchergebnis angezeigt wird. Wenn das der Fall ist, ist dann alles in Ordnung?

Die Seite schema.org http://schema.org/BreadcrumbList erwähnt Microdata, RDFa und JSON-LD. Natürlich hat die JSON-LD-Variante keine Ausgabe, also wäre dies vielleicht die natürliche Anpassung?

Aktualisieren

Das Modul verwendet jetzt json-ld für Breadcrumb-Metadaten.

3
donquixote

Alle drei Syntaxen ermöglichen die Bereitstellung versteckter strukturierter Daten:

  • JSON-LD : Das Element script ist standardmäßig ausgeblendet.
  • Mikrodaten und RDFa : Sie können link/meta-Elemente (die sind standardmäßig ausgeblendet) in den body + bedeutungslosen div/span-Elementen, wenn eine Gruppierung erforderlich ist.

Das Ausblenden des Markups für Breadcrumbs hat höchstwahrscheinlich keine Auswirkungen auf Ihre SEO, da die ausgeblendeten duplizierten Breadcrumbs keine Inhalte enthalten, die nicht auch auf der Seite sichtbar sind.

Aus der Sicht eines Drupal Themers

Für ein Drupal -Modul empfehle ich die Verwendung der Syntax RDFa :

  • Unterstützung ist Teil des Drupal -Kerns in D7 und D8 ( RDF-Modul , RDF-Mapping-API )

    Module können Zuordnungen der Daten und Metadaten ihrer Bundles zu RDF Klassen und Eigenschaften bereitstellen. In diesem Modul werden diese Zuordnungen in Variablen eingefügt, die für Themenfunktionen und Vorlagen verfügbar sind. Alle Drupal Kernthemen sind RDFa-kompatibel codiert.

  • Wenn Sie die Zuordnungs-API RDF in Ihrem Modul verwenden, werden in der Vorlage meines Erachtens nicht einmal RDFa-Elemente angezeigt, sondern nur allgemeine Attribute Drupal, mit denen sie normalerweise arbeiten Andere Vorlagendateien ( rdf_rdfa_attributes )

    Dieses Array wird normalerweise durch Drupal\Core\Template\Attribute geleitet, um die Attributvariablen zu erstellen, die für Vorlagendateien verfügbar sind. Dazu gehören $attributes, $title_attributes, $content_attributes und die feldspezifischen $item_attributes Variablen.

  • Wenn Themen an strukturierten Daten interessiert sind, werden sie wahrscheinlich RDFa lernen, da dies von Anfang an von Drupal unterstützt wird. Falls sie die strukturierten Daten irgendwie manipulieren möchten und Sie eine andere Syntax verwenden, müssten sie nur aufgrund Ihres Moduls eine andere Syntax lernen.

  • Wenn Sie eine andere Syntax verwenden, wird es schwieriger, Ihre Microdata/JSON-LD in das von Drupal generierte RDFa zu integrieren.

    Wenn Sie beispielsweise das Element BreadcrumbList (in JSON-LD oder Microdata) zum Element WebPage (in RDFa, generiert von Drupal) mit der Eigenschaft breadcrumb hinzufügen möchten, können Sie nicht verschachteln die Liste mit dem Attribut property unter dem Attribut WebPage. Stattdessen müssen Sie einen URI für BreadcrumbList generieren (und sicherstellen, dass er eindeutig ist, dh nicht vom Websitebesitzer anderweitig verwendet wird) und diesen URI als Wert für die Eigenschaft breadcrumb unter WebPage referenzieren (dies wäre der Fall) RDFa trotzdem benutzen).

  • Wenn ein Websitebesitzer möchte, dass seine Website JSON-LD ausgibt, ist es einfach, die gesamte RDFa in JSON-LD zu konvertieren. Es ist jedoch nicht möglich, JSON-LD in RDFa zu konvertieren, bei dem das vorhandene Markup verwendet wird, da die Verbindung vom Markup zum Inhalt nicht mit JSON-LD erfasst wird.

2
unor