I just changed the URLs for my entire website. I have set up 301 permanent redirects for all old URLs to new URLs. Rel=canonical are set to new URLs. All Facebook Like buttons count have returned to 0. Any way to get the original count showing on the new URLs?
It's likely that those counts won't be retrievable, except maybe if you change the site structure back. (Don't quote me on that!)
Take a look at this post http://blog.hubspot.com/blog/tabid/6307/bid/22166/SEO-301-Redirects-Don-t-Pass-Existing-Social-Shares.aspx on their experiences.
I have had issues with several social "counting" networks losing those counts when adjusting things, only to lose my valuable "manna" forever.
I have been experiencing the same problem and just found a good solution.
Specify your old url in your like button html code (fb:like) so that you can fetch your original like/share count. When someone likes it, it will be published on his/her wall as your old link which does not exist anymore. So you need to do two things:
1) Make sure your old url exists (via url rewriting, keeping your old copy or whatever you can think of).
2) 301 redirect your old url to your new url.
You still need to display your old url in the Like button html code though. Hope this helps.