it-swarm.com.de

Können Mikrodaten in Meta-Tags implementiert werden?

Bitte beachten Sie den folgenden Code, der mit Attributen gekennzeichnet ist, um Mikrodaten bereitzustellen:

<!DOCTYPE html>
<html>
    <head>
        <title>Micro data test - Normal version</title>
    </head>
    <body>
        <div itemscope itemtype="http://schema.org/Product">
            <h1 itemprop="name">Product name</h1>
            <img alt="" itemprop="image" src="http://placehold.it/200x200" />
            <div itemprop="description">This is the product description.</div>
            <div itemprop="offers" itemscope itemtype="http://schema.org/Offer">
                <meta content="in_stock" itemprop="availability" />
                <span content="GBP" itemprop="priceCurrency">£</span><span itemprop="price">100.00</span>
            </div>
        </div>
    </body>
</html>

Die Verwendung von Googles Structured Data Testing Tool führt zu positiven Ergebnissen.

Dies ist in dem Testbeispiel in Ordnung, wir möchten jedoch Mikrodaten auf einer Vielzahl von Sites implementieren, deren HTML-Struktur stark variiert. Um die Attribute auf diese Weise zu implementieren, muss jemand das HTML-Markup auf jeder Site einzeln manuell bearbeiten.

Vorzugsweise möchten wir in der Lage sein, eine einzelne Funktion aufzurufen, die alle Mikrodaten an einem Ort verpackt. Technisch ist dies möglich, indem Meta-Tags folgendermaßen verwendet werden:

<!DOCTYPE html>
<html>
    <head>
        <title>Micro data test - Meta tag version</title>
    </head>
    <body>
        <meta itemscope itemtype="http://schema.org/Product" itemref="microName microImage microDescription microOffer" />
        <meta id="microName" itemprop="name" content="Product name" />
        <link id="microImage" itemprop="image" href="http://placehold.it/200x200" />
        <meta id="microDescription" itemprop="description" content="This is the product description." />
        <meta id="microOffer" itemprop="offers" itemscope itemtype="http://schema.org/Offer" itemref="microCurrency microPrice microAvail" />
        <meta id="microAvail" itemprop="availability" content="in_stock" />
        <meta id="microCurrency" itemprop="priceCurrency" content="GBP" />
        <meta id="microPrice" itemprop="price" content="100.00" />
        <div>
            <h1>Product name</h1>
            <img alt="" src="http://placehold.it/200x200" />
            <div>This is the product description.</div>
            <div>£100.00</div>
        </div>
    </body>
</html>

Mit Googles Structured Data Testing Tool erhalten Sie die gleichen positiven Ergebnisse wie mit dem ersten Test.

Zu Referenzzwecken (wir würden dies niemals auf einer tatsächlichen Website tun) Structured Data Testing Tool von Google Gibt einen Fehler zurück, wenn Sie versuchen, durch CSS verborgene Mikrodaten zu übergeben.

Sowohl das normale als auch das Meta-Tag-Markup führen zu denselben Ergebnissen. Aufgrund der folgenden Aussagen von Google und Schema.org habe ich jedoch einige Bedenken:

https://support.google.com/webmasters/answer/14675 heißt es:

Im Allgemeinen verwendet Google nur markierte Daten, die für den Nutzer sichtbar sind. Versteckte Daten werden ignoriert. In einigen Fällen kann es jedoch nützlich sein, sowohl eine maschinenlesbare als auch eine lesbare Version Ihres Inhalts bereitzustellen. Beispielsweise ist die Textzeichenfolge "Elvis 'Geburtstag" für viele menschliche Leser von Bedeutung, für Suchmaschinen jedoch weniger aussagekräftig als der 08.01.1935. Ebenso können menschliche Leser auf die Bedeutung des $ -Symbols schließen, aber es kann nützlich sein, Suchmaschinen gezielt mitzuteilen, ob Ihre Preise in Pesos oder in Dollar angegeben sind.

http://schema.org/docs/gs.html besagt (in Bezug auf die Verwendung von Meta-Tags):

Diese Technik sollte sparsam eingesetzt werden. Verwenden Sie Meta mit Inhalten nur für Informationen, die ansonsten nicht gekennzeichnet werden können.

http://schema.org/docs/faq.html#1 besagt:

Im Allgemeinen sollten Sie nur den Inhalt markieren, der für Personen sichtbar ist, die die Webseite besuchen, und nicht den Inhalt in versteckten Divs oder anderen versteckten Seitenelementen.

Meine Fragen sind:

  1. Wenn keine Fehler zurückgegeben werden, würden wir dann von Suchmaschinen bestraft, wenn sie Meta-Tags auf diese Weise verwenden (d. H. Doppelten Inhalt, versteckte Informationen usw.)?
  2. Wenn dies nicht geeignet ist, können Sie eine Möglichkeit vorschlagen, die Mikrodaten von den tatsächlichen Daten zu trennen, oder müssen wir die Kugel beißen und diese von Fall zu Fall in HTML implementieren?
12
Hidden Hobbes

Ihr Plan, Metadaten für Mikrodaten zu verwenden, ist nicht realisierbar. Hier ist Googles FAQ, warum Ihre Daten nicht in den Suchergebnissen angezeigt werden :

Ist Ihr markierter Inhalt vor Benutzern verborgen?

Im Allgemeinen zeigt Google keine Inhalte in Rich Snippets an, die für menschliche Nutzer nicht sichtbar sind. Verstecken Sie den Inhalt, den Sie für Rich Snippets markiert haben, nicht mit Techniken wie display:none, value-title oder css. Google ignoriert Inhalte, die für Benutzer nicht sichtbar sind. Markieren Sie daher den Text, den Besucher auf Ihren Webseiten sehen.

Die einzige Möglichkeit, Google zur Verwendung der von Ihnen bereitgestellten Mikrodaten zu bewegen, besteht darin, sie dort zu markieren, wo sieauf der für den Benutzer sichtbaren Seite befinden.

An dieser Stelle wird Google nicht dafür bestraft, dass es versucht, Rich Snippets zu missbrauchen, außer Rich Snippets für diese Website zu deaktivieren. Es würde mich nicht überraschen, wenn Google damit beginnen würde, Websites vollständig aus den Suchergebnissen auszuschließen, wenn Google feststellt, dass die Website versucht, Mikrodaten auf eine Weise zu verwenden, die nicht den Richtlinien entspricht.

Solange Ihre von Ihnen markierten Metadaten auch irgendwo auf der Seite sichtbar sind, wird Google Ihre Website wahrscheinlich nicht als böswillig einstufen. Ihre automatischen Tools erkennen jedoch, wenn Sie die Daten an einem nicht sichtbaren Ort markieren, und zeigen sie nicht in den Suchergebnissen an.

7

Die Verwendung der Elemente meta (und link) für Mikrodaten ist in Ordnung. Manchmal gibt es sogar keine sinnvolle Alternative dazu, beispielsweise wenn bestimmte Codes bereitgestellt werden müssen, bei denen es keinen Sinn macht, sie Ihren Benutzern anzuzeigen.

Google verwendet meta sogar in einigen Beispielen für Rich Snippets:

  • Produkte und Software Apps :

    <meta itemprop="priceCurrency" content="USD" />
    
  • Reviews :

    <meta itemprop="datePublished" content="2006-05-04">
    <meta itemprop="bestRating" content="10"/>
    <meta itemprop="worstRating" content="1"/>
    
  • Videos :

    <meta itemprop="uploadDate" content="2015-02-05T08:00:00+08:00"/>
    <meta itemprop="duration" content="PT1M33S" />
    <meta itemprop="interactionCount" content="2347" />
    
  • Artikel :

    <meta itemprop="datePublished" content="2015-02-05T08:00:00+08:00"/>
    

Die Frage ist also, wie viel ist zu viel (wenn es überhaupt ein Limit gibt)? Und ich denke, es ist sicher anzunehmen, dass es kein festes Limit gibt, es hängt höchstwahrscheinlich von verschiedenen zusätzlichen Faktoren ab.

Es ist jedoch sinnvoll, dass Google das Markup für Mikrodaten nicht schließt, wenn nur meta/link verwendet wird. Warum? Weil sie auch JSON-LD für die Bereitstellung von Schema.org-Daten unterstützen (und manchmal sogar empfehlen ) und dies nur aus "versteckten" Inhalten besteht (nämlich wird ein verstecktes script -Element verwendet als Datenblock ).

In Ihrem Fall würde ich Folgendes vorschlagen: Wenn Sie die strukturierten Daten nicht durch Markieren Ihrer vorhandenen Elemente hinzufügen möchten, verwenden Sie JSON-LD .

5
unor

Ich kann nicht kommentieren, ob dies in allen Situationen funktionieren würde, aber wir verwenden Schema.org so, wie Sie es beschreiben - als Meta-Inhalt auf den Produktseiten. Warum? Es ist einfach viel portabler und zerstört keine Themen. Es ermöglicht auch eine genauere Kontrolle über die Formatierung der Daten und liefert relevante Daten direkt nach <body> (weit über dem Falz). Plattformen, die Hook-basiert sind (oder sogar F & R-basiert wie vQmod), kommen in den Sinn: Es gibt keine Möglichkeit, F & R alle Direktiven fließend in die Struktur zu bringen, ohne sie fest in den Blick zu nehmen.

Wir haben keine Strafen bemerkt, Google verwendet die Daten weiterhin und stellt sie weiterhin in SERP Widgets. Wir haben die meisten Daten noch irgendwo auf der Seite, aber soweit es das Markup betrifft, befindet es sich in einem einzigen hierarchischen Meta-Container, in dem content="" verwendet wird ". Gehen Sie jetzt nicht zu weit - strukturelle Dinge wie Überprüfungsschleifen, Brotkrumen, Hauptbeschreibungen oder Spezifikationen sollten in diesem Meta-Container am besten weggelassen werden. Versuchen Sie, sie sichtbar zu machen.

Die meisten Leute werden sagen "benutze content="" Metas nicht", aber andererseits haben die meisten dieser Leute es noch nie versucht. Gleiches gilt für Dinge wie reichhaltiges Markup auf Produktlisten in Kategorien ... ja, wir brechen auch diese Regel :) Denken Sie daran, dass Google nicht der einzige Fisch im RDF Teich ist. Was G sagt, ist nicht "machen oder brechen", wenn Datenformate mit Standardausgabe auf eine Weise verwendet werden, die für den Rest des Teiches vollkommen akzeptabel ist. Vielleicht sogar, weil G selbst in Zukunft seine Meinung ändert. Es möchte vor allem Daten, aber Sie können die Daten darunter/darunter codieren, während Metaattribute sie in maschinenlesbarer Sprache in den Vordergrund rücken und zentrieren.

2
dhaupin