You MUST update your <html> tags if you are using the XFBML button

Recently, we started to receive a number of support requests indicating that the Like button was not posting correct images and descriptions to user's walls. We started digging and discovered that Facebook quietly made a change to their documentation that will have a direct impact on you if you are using an XFBML button.

In the old version of our docs, it instructed you to change your opening <html> tag to:

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->getLang() ?>" xmlns:fb="http://www.facebook.com/2008/fbml" xmlns:og="http://opengraph.org/schema/" lang="<?php echo $this->getLang() ?>"

Well, they changed it. Now you need to change it to read:

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->getLang() ?>" xmlns:fb="http://www.facebook.com/2008/fbml" xmlns:og="http://ogp.me/ns#" lang="<?php echo $this->getLang() ?>"

Note the change to xmlns:og="http://ogp.me/ns#".

This change needs to be made to the following files:
  • app/design/frontend/[package]/[theme]/template/page/1column.phtml
  • app/design/frontend/[package]/[theme]/template/page/2columns-left.phtml
  • app/design/frontend/[package]/[theme]/template/page/2columns-right.phtml
  • app/design/frontend/[package]/[theme]/template/page/3columns.phtml
If you do not make this change, the button may not function as you expect it to. Once you are done making the change, you should run a few test URLs through the Facebook URL linter here: https://developers.facebook.com/tools/debug - it will tell you if there are any problems. You may get a warning about a locale, but that is an issue that will be addressed in a future update (don't worry, Facebook still grabs the locale from your web page).