Facebook open graph snippet to set default image

Adding this snippet to the functions.php of your wordpress theme will allow you to specify Facebook Open Graph information on your WordPress posts. Allowing you to specify which image should be displayed when sharing your article on Facebook among other things.

Just set your ADMIN_ID by going to http://graph.facebook.com/yourfacebookusername, and modify the URL of your site’s logo. Then you can check that Facebook is getting all the correct information by going to https://developers.facebook.com/tools/debug

Code Snippet:

function diww_facebook_image() {
echo '<meta property="fb:admins" content="ADMIN_ID" />';
echo '<meta property="og:title" content="' . get_the_title() . '" />';
echo '<meta property="og:site_name" content="' . get_bloginfo('name') . '" />';

global $post;
if ( is_singular() ) { // only if a single post or page
echo '<meta property="og:type" content="article" />';
echo '<meta property="og:url" content="' . get_permalink() . '" />';

if (has_post_thumbnail( $post->ID )) { // use featured image if there is one
$feat_image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'large' );
echo '<meta property="og:image" content="' . esc_attr( $feat_image[0] ) . '" />';
}else{ // use site logo in case no featured image
echo '<meta property="og:image" content="http://yourdomain.com/logo.png" />';

if ( is_home() ) { // for homepage only
echo '<meta property="og:type" content="website" />';
echo '<meta property="og:url" content="' . get_bloginfo('url') . '" />';
echo '<meta property="og:image" content="http://yourdomain.com/logo.png" />';

add_action( 'wp_head', 'diww_facebook_image' );

Comments  Leave a Reply

  1. Astro Gremlin July 6, 2012 at 3:02 pm

    Dave, there was a brief period when I was sharing my posts and Facebook was running an image from my ads, then telling me it was not allowed! This was occurring even when I had a non-ad image at the top of the post. It worked itself out, but this snippet could come in handy to select the desired image.

Add a Comment

We're glad you have chosen to leave a comment. Please keep in mind that all comments are moderated according to our privacy policy, and all links are nofollow. Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.

WordPress Launch Checklist

The Ultimate WordPress Launch Checklist

We've compiled all the essential checklist items for your next WordPress website launch into one handy ebook.
Yes, Send Me the Free eBook!