Всем привет! Есть сайт на
wordpress, где в шапке настроил мета-теги для
twitter и
facebook заданные с помощью
open graph. (проблема с выводом картинки у фесбука)
Сам код
<meta name="twitter:site" content="@http://site.ru">
<meta name="twitter:creator" content="@site.ru">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="<?php the_title(); ?>">
<meta property="og:type" content="image/jpeg">
<meta property="og:url" content="http://site.ru">
<meta property="og:title" content="<?php the_title(); ?>">
<meta name="twitter:description" content="<?php while (have_posts()):the_post();
$out_excerpt = str_replace(array("\r\n", "\r", "\n", "'" ,"\""), "", get_the_excerpt());
echo $out_excerpt; endwhile; ?>">
<meta property="og:description" content="<?php while (have_posts()):the_post();
$out_excerpt = str_replace(array("\r\n", "\r", "\n", "'" ,"\""), "", get_the_excerpt());
echo $out_excerpt; endwhile; ?>">
<?php if(!has_post_thumbnail( $post->ID ))
{
$default_image='site.ru/logo.png';
echo '<meta name="twitter:image:src" content="' . $default_image . '">';
echo '<meta property="og:image" content="' . $default_image . '">';
}
else
{
$thumbnail_src = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'full' );
echo '<meta name="twitter:image:src" content="' . esc_attr( $thumbnail_src[0] ) . '">';
echo '<meta property="og:image" content="' . esc_attr( $thumbnail_src[0] ) . '">';
} echo "\n"; ?>
<link rel="profile" href="http://gmpg.org/xfn/11">
<link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>">
Вот в таком виде выводится на сайте
<meta name="twitter:site" content="@http://site.ru">
<meta name="twitter:creator" content="@site.ru">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="Content">
<meta property="og:type" content="image/jpeg">
<meta property="og:url" content="http://site.ru">
<meta property="og:title" content="Title">
<meta name="twitter:description" content="description">
<meta property="og:description" content="description">
<meta name="twitter:image:src" content="http://site.ru/img-768x500.jpg"><meta property="og:image" content="http://site.ru/img-768x500.jpg">
<link rel="profile" href="http://gmpg.org/xfn/11">
<link rel="pingback" href="http://site.ru/xmlrpc.php">
При шаринге в
твиттере все новости выводятся отлично, а вот
в отладчике facebook пишет вот такую ошибку:
Свойство «og:image» должно быть указано в явном порядке, даже если его значение может быть вычислено на основании других тегов.
и выводит каждый раз одну и ту же картинку (не новости, котрую постим!), причем не лого, как можно было подумать, а взятую с другой новости. (хотя в коде выводится правильная, как и для твиттера)
В чем может быть ошибка и как можно это исправить?