Поддержка Проблемы и решения Вставить первую картинку записи в фейсбук

  • Не могу найти свежую информацию, чтобы вставить вручную метатег на страницу:
    wordpress <meta property=»og:image»…….
    чтобы вставлялась первая картинка при размещении ссылки в соц сети.

Просмотр 15 ответов — с 1 по 15 (всего 19)
  • чтобы вставлялась первая картинка при размещении ссылки в соц сети.

    Нужна настройка Open Graph Protocol Это делают все сео-плагины или можно найти отдельный плагин для этого https://ru.wordpress.org/plugins/search/Open+Graph/.

    ИМХО. лучше конечно не первую картинку поста использовать, а к каждому посту назначать миниатюру (изображение записи)
    http://joxi.ru/52agEwOhG5MW4r

    • Ответ изменён 6 лет, 2 месяца назад пользователем O.

    Вставил код как для контакта, отсюда wphook.
    Но все равно тянет картинку из шапки, хотя миниатюра выставлена.
    здесь

    Модератор Denis Yanchevskiy

    (@denisco)

    WordPress-разработчик, denisco.pro

    В коде <meta property="og:image" content="http://julirey.com/wp-content/uploads/2018/01/Снимок-экрана-2018-01-30-в-13.01.53-150x150.png" />.

    В facebook вроде то же изображение.

    С разных браузеров пробую, все берет логотип. Не понимаю, что кеш один здесь для всех браузеров?

    Модератор Yuri

    (@yube)

    Не понимаю, что кеш один здесь для всех браузеров?

    «Здесь» — это где?

    Проверять OG лучше всего тут https://developers.facebook.com/tools/debug/
    Обращайте внимание на предупреждение (Warnings) и на время получения инфы с сайта (Time Scraped), ибо Мордокнига кэширует.

    Проверил с другого компа тоже самое, проверил по ссылке, которую Юра дал, тоже самое логотип лезет. В других постах нормально. У меня стоит all in one seo pack в нем причина, видимо?

    не в нем, ибо в нем у вас open graph разметка отключена.

    во-первых, что значит логотип? у вас вроде не логотип в коде, а миниатюра.

    во-вторых, в коде измените 'thumbnail' на более адекватный размет — фейсбук хочет более большие картинки — 150 на 150 их не устраивает.

    Модератор Yuri

    (@yube)

    Я же написал: Обращайте внимание на предупреждение (Warnings)

    Image Too Small
    Provided og:image URL, http://julirey.com/wp-content/uploads/2018/01/Снимок-экрана-2018-01-30-в-13.01.53-150×150.png was not valid because it did not meet the minimum size constraint of 200px by 200px.

    И вот это

    лучше конечно не первую картинку поста использовать, а к каждому посту назначать миниатюру (изображение записи)

    в коде измените ‘thumbnail’ в каком коде? я поменял только в админке Настройки — Настройки медиафайлов — Размер миниатюры на 200*200
    Переставил картинку и заново сохранил запись. Результат старый.

    лучше конечно не первую картинку поста использовать

    У меня и так миниатюра указана, значит код этот убирать https://www.wphook.ru/seo/open-graph-vkontakte.html ?

    Сейчас у меня стоит:

    //open graph разметка для сайта start
    function wph_open_graph() {
        echo '<meta property="og:site_name" content="' . get_bloginfo('name') . '" />'.PHP_EOL;
     
    	global $post;
    	if (is_singular()) { //страница одиночной записи
                echo '<meta property="og:title" content="' . get_the_title() . '" />'.PHP_EOL;
    	    echo '<meta property="og:type" content="article" />'.PHP_EOL;
    	    echo '<meta property="og:url" content="' . get_permalink() . '" />'.PHP_EOL;
            if (has_post_thumbnail($post->ID)) { //если есть миниатюра - используем ее
                $ogimage = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'thumbnail');
                echo '<meta property="og:image" content="' . esc_attr($ogimage[0]) . '" />'.PHP_EOL;
            } 
            else { //если нет миниатюры, то берем первую картинку записи
                echo '<meta property="og:image" content="' . esc_attr(wph_catch_that_image()) . '" />'.PHP_EOL;
            }
    	}
    	if (is_home()) {// для главной
    	    echo '<meta property="og:type" content="website" />'.PHP_EOL;
    	    echo '<meta property="og:url" content="' . get_bloginfo('url') . '" />'.PHP_EOL;
    	    echo '<meta property="og:image" content="http://julirey.com/wp-content/themes/Caffeine/images/logo.png" />'.PHP_EOL;
    	}
    }
    add_action('wp_head', 'wph_open_graph'); 
    //open graph разметка для сайта end
    • Ответ изменён 6 лет, 2 месяца назад пользователем Egor2015.

    в коде измените ‘thumbnail’ в каком коде?

    в ниже указанном, вот эту строчку:

    
    $ogimage = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'thumbnail');
    

    поставьте там вместо 'thumbnail' размер 'large'.

    и да — изменения размеров миниатюр в «медиафайлах» меняет их размер только для новых картинок — для старых надо использовать перегенерацию миниатюр.

    У меня и так миниатюра указана, значит код этот убирать

    мой код полезен, если миниатюры не установлены.
    если же установлены — включите социальный модуль в all in one seo pack и не ломайте себе голову.

    Включил социальный модуль в all in one seo pack, результатат нет.
    Что в нем настроить можно?

    Модератор Yui

    (@fierevere)

    永子

    социальные мета — настройкм изображения
    выбрать источник OG:Image как изображение записи

    также учтите что результаты кешируются соцсетями

    Сделал так:

    Выбрать источник OG:Image First Image In Content
    Размеры прописал 527*325 (Мне нужно, чтобы картинка была на всю ширину поста)

    Все равно на этой странице вылазит картинка из шапки а не из поста. Здесь

    Видимо, да «результаты кешируются соцсетями» как мне посмотреть тогда результат, какой есть способ?

    Модератор Yuri

    (@yube)

    как мне посмотреть тогда результат, какой есть способ?

    Пойти в дебагер, на который я дал ссылку, и если кэш не свежий, нажать кнопочку, чтобы обновилось.

Просмотр 15 ответов — с 1 по 15 (всего 19)
  • Тема «Вставить первую картинку записи в фейсбук» закрыта для новых ответов.