分享我的网址时,Facebook Sharer如何选择图片和其他元数据?

当使用Facebook Sharer时,Facebook将为用户提供使用从源头抽取的少量图像中的一个作为链接预览的选项。 如何选择这些图像,以及如何确保我的页面上的任何特定图像始终包含在此列表中?


我如何告诉Facebook当我的页面被分享时使用哪个图片?

Facebook有一组开放图形元标签,用于决定要显示哪个图像。

Facebook图片的关键之一是:

<meta property="og:image" content="http://ia.media-imdb.com/rock.jpg"/>
<meta property="og:image:secure_url" content="https://secure.example.com/ogp.jpg" />

它应该出现在页面顶部的<head></head>标记中。

如果这些标签不存在,它将寻找他们较早的指定图像的方法: <link rel="image_src" href="/myimage.jpg"/> 。 如果两者都不存在,Facebook将查看您网页的内容并从您的网页中选择符合其共享图像标准的图像:图像必须至少为200像素,200像素,最大宽高比为3:1,而在PNG中, JPEG或GIF格式。

我可以指定多个图像以允许用户选择图像吗?

是的,您只需按照您希望显示的顺序添加多个图像元标记即可。然后,用户将看到一个图像选择器对话框:
Facebook图片选择器

我指定了适当的图片元标记。 Facebook为什么不接受这些更改?

一旦URL被共享后,Facebook的抓取工具将会访问您的页面并缓存元信息,该抓取工具拥有facebookexternalhit/1.1 (+https://www.facebook.com/externalhit_uatext.php)用户代理。 要强制Facebook服务器清除缓存,请使用他们在2010年6月推出的Facebook Url Debugger / Linter工具来刷新缓存并排除页面上的任何元标记问题。

此外,页面上的图片必须可供Facebook抓取工具公开访问。 您应该指定绝对网址,例如http://example.com/yourimage.jpg而不只是/yourimage.jpg。

我可以使用Javascript或jQuery等客户端代码更新这些元标记吗? 与搜索引擎抓取工具非常相似,Facebook抓取工具不会执行脚本,因此当下载页面时出现的任何元标记都是用于图像选择的元标记。

添加这些标签会导致我的页面不再有效。 我怎样才能解决这个问题?

您可以将必要的Facebook命名空间添加到您的标记中,然后页面应该通过验证:

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:og="http://ogp.me/ns#"
      xmlns:fb="https://www.facebook.com/2008/fbml">  

当你分享Facebook时,你必须将你的html添加到下一个meta标签的头部:

<meta property="og:title" content="title" />
<meta property="og:description" content="description" />
<meta property="og:image" content="thumbnail_image" />

就是这样!

根据FB告诉你的内容添加按钮。

所有您需要的信息都在www.facebook.com/share/


截至2013年,如果您使用的是facebook.com/sharer.php(PHP),您可以简单地制作任何按钮/链接,如:

<a class="btn" target="_blank" href="http://www.facebook.com/sharer.php?s=100&amp;p[title]=<?php echo urlencode(YOUR_TITLE);?>&amp;p[summary]=<?php echo urlencode(YOUR_PAGE_DESCRIPTION) ?>&amp;p[url]=<?php echo urlencode(YOUR_PAGE_URL); ?>&amp;p[images][0]=<?php echo urlencode(YOUR_LINK_THUMBNAIL); ?>">share on facebook</a>

链接查询参数:

p[title] = Define a page title
p[summary] = An URL description, most likely describing the contents of the page
p[url] = The absolute URL for the page you're sharing 
p[images][0] = The URL of the thumbnail image to be used as post thumbnail on facebook

这很简单:您不需要任何js或其他设置。 只是一个HTML原始链接。 以任何你想要的方式来设计A标签。

链接地址: http://www.djcxy.com/p/70349.html

上一篇: How does Facebook Sharer select Images and other metadata when sharing my URL?

下一篇: How to add Google Talk (~ Hangouts) to Pidgin chat client?