I have been, or can be if you click on a link and make a purchase, compensated via a cash payment, gift, or something else of value for writing this post. Regardless, I only recommend products or services I use personally and believe will be good for my readers.
Like
(or Share
) button acts the same as sharing or posting a URL to your wall, except you don’t have the chance to leave a comment or choose which image to include with the post.
If you post a link to your wall, Facebook will guess at which images on the page may be best suitable for the page, and allow you to choose from several of them
However, with the Like
button that you can add to your Thesis site, when a user clicks the button, Facebook decides which image to use, and it isn’t always the best.
In order to control this, a tag is added to the <head> of the page, specifying the image_src
for the page. There are probably WordPress plugins that do this, but with Thesis, we don’t have to use a plugin.
Custom Fieldsvisible. This is where we’re going to set the value. If you don’t see a section for
Custom Fields, you can click on
Screen Optionsnear the upper-right of the screen and check that box.
Next, create a new Custom Field named image_src
, and for the value, enter the full URL to the image you’d like to feature.
Now we’re going to get our hands dirty. Open custom_functions.php, which is saved in /wp-content/themes/thesis_xx/custom (with xx being the version number). The first thing we’re going to do is add the function to write the image_src
tag in the
function image_src() { if (is_single() && (get_post_meta(get_the_ID(), 'image_src', true) != '')) { echo('<link rel="image_src" href="' . get_post_meta(get_the_ID(), 'image_src', true) . '" / >' . "\n"); } // ends if (is_single() && (get_post_meta(get_the_ID(), 'image_src', true) != '')) } // ends function image_src()
Next, add the hook, telling Thesis when to execute the function call:
add_action('wp_head', 'image_src');
Now, if the page that’s called is a single post, and the image_src
custom field is set, when a user clicks the Like
button, the specified image will be used.
If you wanted to take this a step further, add an else condition after the if block, giving a default image to use for the sharing. Or, leave it as-is and let Facebook decide.