Ich habe widersprüchliche Informationen darüber gesehen, wie Open Graph-Namespaces am besten implementiert werden können. Insbesondere verwendet die Open Graph-Website einige verschiedene Methoden, und die Facebook Open Graph-Beispiele verwenden andere Methoden.
Beispiel für eine Open Graph-Website (unter Verwendung des HTML-Präfixattributs):
<html prefix="og: http://ogp.me/ns#">
Quellcode der Open Graph-Website (unter Verwendung des HTML XMLNS-Attributs):
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://ogp.me/ns#">
Facebook Open Graph-Dokumentation (unter Verwendung des HEAD-Präfixattributs):
<head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb#">
Facebook Open Graph-Dokumentation Nr. 2 (unter Verwendung des HTML-XMLNS-Attributs):
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://ogp.me/ns#"
xmlns:fb="https://www.facebook.com/2008/fbml">
Was ist die empfohlene Methode oder spielt es keine Rolle?
facebook
facebook-opengraph
xml-namespaces
Matt Beckman
quelle
quelle
Antworten:
Sie sind alle gleichwertig und werden alle funktionieren.
Verwenden Sie das Präfix, da dies die neue empfohlene Methode ist und weniger Zeichen enthält.
Ich werde unsere gesamte Dokumentation auf das Präfix aktualisieren.
quelle
xmlns
. Sollte dasprefix
auch aufhtml
oderhead
tag verwendet werden? Wäre es so oder so in Ordnung? Welches wird empfohlen?prefix
aufhead
. Es funktioniert auf beiden, aber näher an den Tags ist besser.Ich habe versucht, @Paul Tarjans Antwort zu folgen, ein Präfix im Kopf zu verwenden. Allerdings habe ich einige Internet Explorer 8 Problem . Am Ende verwende ich also immer noch die xmlns-Methode für den fb-Namespace:
quelle
Es ist nicht einmal wichtig. Der anfängliche RDFa-Kernkontext erkennt
og
als weit verbreitetes Vokabularpräfix:Hervorhebung zur Klarheit hinzugefügt.
Daher müssen Sie Ihren HTML-Dokumenten keinen Namespace hinzufügen. Weitere Informationen hier .
quelle
Es gibt den besten Weg zur Validierung.
quelle
Das Präfix / xmlns-Attribut ist nützlich, um Kurzschrift zu definieren. rdf stammt aus der xml-Abstammung, daher sollte erwartet werden, dass die xmlns-Notation unabhängig von den Details des Doctype funktioniert. rdfa erweitert HTML um Attribute einschließlich des Präfixes, wie von http://www.w3.org/TR/rdfa-in-html/#extensions-to-the-html5-syntax angegeben. Dies erfordert jedoch die Einhaltung von http: // dev. w3.org/html5/rdfa/rdfa-module.html Auch die darin erwähnte Werkzeugunterstützung für rel = "profile" wird noch erwartet. Bis dahin haben Sie die Wahl zwischen der Verwendung älterer Doctypes oder der manuellen Platzierung von rdf: zu Validierungszwecken oder warten Sie, bis der Validator und solche Tools aufholen. Der richtige Ort, um eine Deklaration abzugeben, ist jedes Elementöffnungs-Tag, das Vorfahr dessen ist, wo immer die Kurzschreibweise verwendet wird. Speziell für den Fall des og-Präfixes ist es durch den ursprünglichen Kontext von RDFa Core vordefiniert,http://www.w3.org/2011/rdfa-context/rdfa-1.1.html Es ist also in Ordnung, es für neuere Doctypes insgesamt zu überspringen. Und speziell für HTML5 wird der RDFa-Anfangskontext http://www.w3.org/2011/rdfa-context/html-rdfa-1.1 erst nach dem zuvor erwähnten RDFa-Anfangskontext geladen.
quelle