In dem Artikel –Facebook Gefällt mir Button – „richtiges“ Bild im Artikel einbinden– habe ich erklärt, wie man Artikelbilder für den Facebook Publisher einbauen kann.
Diese Technik führt aber zu Problemen bei der Validierung da das Open Graph Protokoll angemeckert wird. Nach einiger Recherche im Web habe ich den passenden Hinweis gefunden. Die für Facebook verwendeten META-Tags werden nur dann ausgegeben, wenn Facebook auf die Seite zugreift.
Hier der Code zur Abfrage :
<?php //Diese Funktion ermittelt, ob der "HTTP User Agent" Facebook ist. function is_facebook() { if(!(stristr($_SERVER["HTTP_USER_AGENT"],'facebook') === FALSE)) return true; } ?>
Nun müssen die META-Tags nur noch zusammen mit der einer if Abfrage eingebunden werden. Die Werte werden erst dann ausgegeben, wenn die Funktion den Wert true liefert.
<?php if(is_facebook()){?> <meta property="og:image" content="<?php echo catch_that_image(); ?>"/> <?php }?>
Schon erledigt, kein weiteres Validierungsproblem? Zu mindestens nicht damit.