Протокол открытого графика.Как определить, есть ли Facebook - PullRequest
0 голосов
/ 12 февраля 2012

На LinkedIn здесь"изображение должно быть не менее 80 x 150 пикселей". На Facebook здесь изображение "не может превышать 130x110 пикселей". Я хочу использовать функцию php, чтобы изменить размер миниатюры для Facebook или LinkedIn.

Как я могу определить, есть ли Facebook или LinkedIn, когда я делюсь ссылкой?

EDIT (подробности):

Когда я вставляю ссылку, чтобы поделиться ею в Facebook или LinkedIn, они получают информацию, которая находится в этих тегах внутри заголовка HTML-документа:

<meta property="og:url" content="..." />
<meta property="og:description" content="..." />
<meta property="og:image" content="image.jpg" />
<meta property="og:title" content="title" />
<meta property="og:type" content="website" />
<meta property="fb:app_id" content="id..." />
<meta property="og:locale" content="en_US" />

Для части og: image для LinkedIn, если он меньше, чем упомянутые размеры, он будет игнорироваться, в то время как для Facebook максимальный требуемый размер меньше, чем тот, который требуется LinkedIn, а на Facebook для неправильного изображения он выглядит, чтобы отобразить изображение их собственный по умолчанию. Поэтому я пытаюсь определить, делюсь ли я ссылкой на Facebook или LinkedIn, чтобы изменить ее размер

1 Ответ

3 голосов
/ 12 февраля 2012

Ищите пользовательский агент запроса, если это Facebook, тогда подайте оптимизированное для Facebook изображение, в противном случае - изображение по умолчанию (размеры в размере).

facebookexternalhit/1.1 (+https://www.facebook.com/externalhit_uatext.php)

Источник: Open Graph Protocol, Раздел передового опыта .

ПРИМЕЧАНИЕ: Хотя это не является целью данного пользовательского агента (неясно, что разрешено и не разрешено ). Но я думаю ваша цель не будет нарушать какие-либо политики платформы.

...