Why does Facebook show the wrong image or text?

The first time Facebook accesses your webpage, it will cache the image and text it finds in the webpage Open Graph meta tags. Facebook then prefers to use that cached information until it has expired — which can take up to 30 days, unless 50 actions (likes, shares and comments) have been associated with a URL, in which case its title can never been refreshed.

So, before you hit the Facebook Send / Share button for the first time, make sure you’re satisfied with your Post or Page images and text. ;-) If you change your mind, and your webpage has not been liked or shared 50 times yet, you can use Facebook’s Open Graph debugging tool to refresh Facebook’s cache. If your webpage has already been liked or shared on Facebook, then Facebook may refuse to refresh it’s cache (images, for example, may sometimes stick in Facebook’s cache). If that’s the case, you could try changing the post / page permalink URL and/or the attached media / featured image.

See here for more info: Facebook’s Link Sharing FAQ

After publishing a new Post or Page, a ‘Validate’ tab will appear in the Social and Search Optimization metabox. You can use these links to check that Facebook, Google, etc. are reading all meta tags and Schema markup correctly.

See Facebook’s Maximizing Distribution for Media Content article for more information on Open Graph meta tags and Facebook’s preferred image sizes. Facebook prefers Open Graph image dimensions of 1200x630px cropped (for retina and high-PPI displays), 600x315px cropped as a minimum (the default settings value), and ignores images smaller than 200x200px.