Многие пользователи WordPress после изменения функционала кнопки Facebook Like столкнулись с проблемой того, что в профилях к ссылке крепится картинка, случайно выбираемая Фейсбуком:


Естественно, лучше, чтобы выводилась первая картинка из содержания, которая обычно и является иллюстрацией к посту, а в случае отсутствия таковой, — логотип сайта.

Мы нашли решение этой проблемы. Необходимо в редакторе темы открыть файл functions.php и добавить в него следующий код:

// Даём понять Фейсбуку, где правильная картинка

add_action( 'wp_head', 'fb_like_thumbnails' );

function fb_like_thumbnails()
{
	global $posts;
	$default = '/images/logo.png';

	$content = $posts[0]->post_content; // $posts is an array, fetch the first element
	$output = preg_match_all( '/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $content, $matches);
	if ( $output > 0 )
		$thumb = $matches[1][0];
	else
		$thumb = $default;

	echo "\n\n<!-- Facebook Like Thumbnail -->\n<link rel=\"image_src\" href=\"$thumb\" />\n<!-- End Facebook Like Thumbnail -->\n\n";
}

Конечно, путь ‘/pics/logo.png’ необходимо заменить на путь к Вашему логотипу. А в остальном результат получился следующий:

В случае отсутствия в посте каких-либо картинок, выводится логотип: