Linkedin разделяет URL / не анализирует открытый график
Документацию Linkedin можно найти здесь
Как говорится, для этого нужно:
og:title
og:description
og:image
og:url
Вот пример моего исходного кода WordPress блога, в котором для простоты я использую плагин Jetpack:
<!-- Jetpack Open Graph Tags -->
<meta property="og:type" content="article" />
<meta property="og:title" content="Starbucks Netherlands Intel" />
<meta property="og:url" content="http://lorentzos.com/starbucks-netherlands-intel/" />
<meta property="og:description" content="Today I had some free time at work. I wanted to play more with Foursquare APIs. So the question: "What is the correlation of the Starbucks Chain in the Netherlands?". Methodology: I found all the p..." />
<meta property="og:site_name" content="Dionysis Lorentzos" />
<meta property="og:image" content="http://lorentzos.com/wp-content/uploads/2013/08/starbucks-intel-nl-238x300.png" />
В Facebook это прекрасно работает, или вы можете увидеть метаданные здесь. Однако LinkedIn более упрям и не анализирует данные даже If you're unable to set Open Graph tags within the page that's being shared, LinkedIn will attempt to fetch the content automatically by determining the title, description, thumbnail image, etc
,
Я знаю, что у меня нет og:image:width
тег, но Linkedin даже не анализирует заголовок, описание или URL. Есть идеи отладить это?
8 ответов
Я снова проверил мой HTML и нашел некоторые предупреждения / ошибки в метаданных. Я исправил их и все хорошо работает. Так что решение, если вы столкнетесь с той же проблемой:
Проверьте ваш HTML снова и отладьте его. Даже если страница хорошо загружается в вашем браузере, парсер LinkedIn не так силен с точки зрения мелких ошибок. Этот инструмент может помочь.
Мое самое первое предложение заключается в добавлении бессмысленного запроса к URL, так что LinkedIn считает, что это новая ссылка (это никак не влияет на что-либо еще), то есть:
http://example.com/link.php?42
или же http://example.com/link.html?refid=LinkedIn
Если это не соответствует вашим потребностям, необходимо принять более решительные меры.
Убедившись, что в вашей консоли нет ошибок, и подтвердите свой сайт, используя: http://validator.w3.org/...
Добавьте атрибут префикса к каждому тегу (не к тегу html), затем снова войдите в свою учетную запись LinkedIn, чтобы очистить кэш...
prefix="go: http://ogp.me/ns#"
то есть:
<meta prefix="og: http://ogp.me/ns#" property="og:title" content="Title of Page" />
<meta prefix="og: http://ogp.me/ns#" property="og:type" content="article" />
<meta prefix="og: http://ogp.me/ns#" property="og:image" content="http://example.com/image.jpg" />
<meta prefix="og: http://ogp.me/ns#" property="og:url" content="http://example.com/" />
Я надеюсь, что одно из этих трех решений работает для кого-то. Ура!
Linkedin кэширует URL-адреса, поэтому перед началом отладки очень удобно убедиться, что это не ваша проблема.
Этот инструмент может тогда пригодиться: https://www.linkedin.com/post-inspector/inspect/
Здесь вы можете предварительно просмотреть свой URL и посмотреть, как он будет выглядеть при публикации. Он также обновляет кеширование, поэтому вы можете быть уверены, возникла ли у вас проблема или это было только кеширование.
Я наткнулся на ту же проблему для нашего сайта Wordpress. Проблема создается конфликтующими заголовками OGP и oembed в стандартном плагине WordPress + Yoast / Jetpack.
Вам нужно отключить oembed заголовки с помощью этого плагина (это не имеет побочных эффектов): https://wordpress.org/plugins/disable-embeds/
После этого вы можете запустить предварительный просмотр ссылки, добавив ?1
как некоторые из вас, ребята, уже указали!
Я надеюсь, что это решит вашу проблему.
Я написал подробное объяснение проблемы здесь: https://pmig.at/2017/10/26/linkedin-link-preview-for-wordpress/
Если вы уверены, что все сделали правильно (с использованием мета-тегов открытого графика, без ошибок на http://validator.w3.org/), и он все еще не работает, обязательно попробуйте его на другой странице, это может быть кэш LinkedIn. вещь.
У меня есть <h1>Project information</h1>
на моей странице, который LinkedIn использовал в качестве заголовка для общего доступа к странице, а не <title>
или же <meta property="og:title" [...]/>
тег. Хотя я все сделал правильно. Но когда я полностью удалил это <h1>Project information</h1>
из источника страницы он продолжал использовать "Информация о проекте", поскольку заголовок даже думал, что его больше нет на странице.
Попробовав другую страницу, все заработало.
После долгих проб и ошибок я обнаружил, что мой.htaccess каким-то образом блокировал робота Linkedin (сайт WordPress). Для тех, кто использует плагин безопасности ithemes для WordPress или другой плагин безопасности, убедитесь, что LinkedIn не заблокирован.
Убедитесь, что нет такой строки:RewriteCond %{HTTP_USER_AGENT} ^Link [NC,OR]
Самый простой способ проверить это - использовать строки htaccess по умолчанию в wordpress.
Как упоминалось ранее, убедитесь, что вы не повторяете кэшированные страницы в linkedin.
Вы можете попробовать это только один раз в неделю! У меня была ссылка на мой сайт, и я хотел настроить изображение, отображаемое Linkedin. Поэтому я добавил открытые графические теги, которые вообще не рендерились. Пока я не прочитал это:
В первый раз, когда сканеры LinkedIn посещают веб-страницу, когда их просят поделиться контентом через URL, данные, которые он находит (значения Open Graph или наш собственный анализ), будут кэшироваться в течение приблизительно 7 дней.
Это означает, что если вы впоследствии измените описание статьи, загрузите новое изображение, исправите опечатку в заголовке и т. Д., Вы не увидите изменения, представленные во время любых последующих попыток поделиться страницей, пока не истечет срок действия кэша и сканер не будет вынужден вернуться на страницу, чтобы получить свежий контент.
Это происходило и на одном из сайтов моего клиента. Я обнаружил, что файл.htaccess блокирует сайт от LinkedIn, если пользовательские агенты содержат строку "Джакарта".
Как только я удалил эту фильтрацию, LinkedIn смог получить доступ ко всей необходимой информации OpenGraph (og), когда клиент опубликует ссылку.
Правда, в документации указано, что у вас могут быть: заголовок, URL, описание и изображение. Но на самом деле у вас есть два варианта. Выберите один из двух следующих наборов и используйте его, так как у вас нет другого выбора...
Параметры набора 1
og:title
og:url
og:image
Установить 2 варианта
og:title
og:url
og:description
Вот почему og:description
таинственным образом отсутствует в ссылках предварительного просмотра. Но если вы уроните изображение, ваше описание, наконец, отобразится.
Попробуйте: в Википедии есть og
описание но нет og
image, а на GitHub есть и то, и другое. Поделитесь Википедией и поделитесь GitHub. Очевидно, что у вас есть выбор для отображения описания или выбор для отображения изображения. Я потратил недели, пытаясь исправить это в службе поддержки LinkedIn, но безрезультатно.
Решением для меня было добавить хэшбэнг. Я нахожусь в приложении в стиле ajax, которое не отображает всю страницу, я думаю, что у linkedin немного шипение по поводу того, что текст / изображение отсутствуют на странице при первоначальной очистке, добавляя
%23!
до конца моего закодированного URL или
#!
к незашифрованному URL-адресу перед отправкой его в linkedin, похоже, отлично справились с задачей для моего всплывающего окна с кнопкой "Поделиться". Не уверен, если это только приложения Ajax/ JS или нет, но это определенно решило пару часов усилий для меня.
Я думаю, это полезно только в том случае, если ваше приложение настроено для обработки escape_fragment в URL и рендеринга статической страницы, а не динамической, но сейчас я не могу проверить эту теорию