Search code examples
htmlcssimagesemantic-markupsocial-media

Facebook link thumbnail


When posting a link to a website in Facebook (Google+ and the rest count too) you're given a thumbnail, or selection of thumbnails to choose from. These are tags from the HTML.

I've always been of the opinion that it was good practice to make my logo a background image inside a h1 tag using CSS. I make the h1 tag a link back to the home page and hide the header text with something like {text-indent: -9999px}, leaving a lovely semantic HTML header. Here's a link to my site if you want a look: http://tempertemper.net

The problem with this is that as it's a background image it's overlooked.

Would it be a good idea to post a custom at the top of the HTML for this purpose only, and hide it off the side of the page? I don't know, seems a bit messy. I could just put the tag inside the h1, but the logo wouldn't be the right shape as it's designed for a specific purpose.

Maybe there's a meta tag for this purpose or maybe there's a technique to force FB to pull a specific image that isn't loaded normally? Does anyone have any ideas or top tips for this?


Solution

  • Yes, you can set a meta tag so that Facebook knows which image to pick.

    See: https://developers.facebook.com/docs/opengraph/

    Specifically, it is the og:image property, and it will tell Facebook's link share script to choose that image as its thumbnail.

    Keep in mind though that Facebook does some caching, so if you've already shared the link once it may still be "stuck" on using the older image.

    You can see whats Facebook getting out of your website by using the Facebook URL Linter. See: http://developers.facebook.com/tools/lint/ (The use of the URL Linter will also rebuild Facebook's cache)