kulturbanause Blog

Responsive Design, WordPress, Konzeption, HTML, CSS, JS & UX/UI …

Facebooks Open-Graph-Protocol HTML5 valide einbinden

Facebooks Open-Graph-Schnittstelle ist eine tolle Möglichkeit um durch die Social Plugins, wie beispielsweise dem Like-Button, eine Vielzahl an Meta-Informationen an Facebook zu übermitteln. Wie ihr eure Website an den Graph anschließen könnt habe ich bereits in einem frühen Artikel beschrieben. Doch leider ist der Quellcode, den Facebook zur Integration des Open-Graphs zur Verfügung stellt, nicht HTML valide. Mit folgendem PHP-Snippet löst ihr dieses Problem.

Workshops und Seminare von kulturbanause

Unsere Seminar-Termine für 2018 sind online!

Jetzt Tickets sichern!

Facebooks Zugriffe auf die Website abfangen

Die Lösung ist eigentlich ganz einfach: zunächst wird abgefragt ob Facebook auf die Website zugreift und das Ergebnis in einer Funktion abgespeichert. Anschließend wird der Quellcode zur Integration des Open-Graph-Protocols nur noch dann ausgegeben, wenn Facebook nach den Daten sucht.

Die nachfolgende Funktion könnt ihr in die functions.php kopieren. Alternativ kann der Code auch mit in den head eurer Website geschrieben werden.


<?php
function is_facebook(){
	if(!(stristr($_SERVER["HTTP_USER_AGENT"],'facebook') === FALSE))
	return true;
}
?>

Im head der Website wird anschließend dieses Snippet eingebunden. Der Code für den Open-Graph muss noch eingebunden werden. Wie das funktioniert, habe ich bereits in einem älteren Artikel zusammengefasst.


<?php if(is_facebook()){?>

Hier wird der Quellcode für den Open-Graph geschrieben. 

<?php } ?>

Dieses Snippet habe ich auf earthpeople.se gefunden. Vielen Dank!

Update: Google+ unterstützt ebenfalls das Open Graph Protocol

Google+ unterstützt nun ebenfalls das Open Graph Protocol. Wenn ihr das oben genannte Snippet verwendet, so versteckt ihr die Infos zwar vor dem Validator - aber auch vor Google+.

Jetzt bist du gefragt!

Hast du Anregungen, Ergänzungen, einen Fehler gefunden oder ist dieser Beitrag nicht mehr aktuell? Dann freuen wir uns auf deinen Kommentar.

Du kannst diesen Beitrag natürlich auch weiterempfehlen. Wir sind dir für jede Unterstützung dankbar!

Das könnte dich auch interessieren

3 Kommentare

  1. waldi

    Verfasst am 2. September 2011 um 13:08 Uhr.

    Und wie macht man jetzt, dass auch Google die OpenGraph-Tags zu sehen bekommt?

    • Jonas Hellwig

      Verfasst am 2. September 2011 um 13:40 Uhr.

      @waldi: man muss auf den hier beschriebenen Code verzichten und die Fehler im HTML-Validator hinnehmen. Dann ist der Open Graph so eingebunden wie Google und Facebook es vorschreiben…

  2. Steffen

    Verfasst am 11. Dezember 2011 um 13:51 Uhr.

    Hallo,

    würde der OpenTag auch funktionieren, wenn man diesen als JavaScript im Head einbettet: /* */

    Das wäre dann doch auch valide ode?!

    MfG

Kommentar verfassen

Dieser Blog lebt vom Feedback der Besucher! Also los, mach mit!
Bitte habe Verständnis dafür, dass Kommentare die mit dem Inhalt dieses Beitrags nichts zu tun haben, gelöscht werden.