当用户试图与嵌入式视频共享页面时,只有页面的标题显示在其Facebook状态而不是Flash Video Player上。在使用Addthis按钮或直接将URL发布到Facebook页面时,这会发生这种情况。知道我如何如何使Facebook拾取嵌入式Flash视频?

有帮助吗?

解决方案

这实际上取决于视频如何嵌入页面。 Facebook只能处理特定格式,如果看到它没有预期的东西,它将默认为“不显示”标准的故障安全。

如果嵌入式视频是公认的标准(即YouTube的默认播放器),则应正常。但是,如果这是您自己的自托视频播放器,那将无法使用。 Facebook不会在其网站上嵌入其他人的Flash对象。


更新11/18

Facebook虽然很聪明,但仍然需要大量帮助才能确定页面上的内容。它可以快速刮擦 <img /> 标签可以给您页面缩略图,但不会扫描 <object>S或 <embed>S,因为这些可能是从YouTube视频(您希望在Facebook上共享)到Intruseflas Flash应用程序(Facebook在其网站上不想要的)。

为了使事情变得更容易,YouTube实际上使用了特定的Facebook应用程序,使您可以共享将自动嵌入Facebook的视频。除了直接链接到此应用程序外,每个YouTube视频页面还包括其标题中的其他元信息,Facebook用来刮擦视频并将其嵌入到页面中。这是您之前链接到的视频中的一个示例:

<meta property="fb:app_id" content="87741124305" />
<meta property="og:title" content="Cubed: Manny Pacquiao&amp;#39;s Punchout" />
<meta property="og:description" content="Manny Pacquiao is training hard for his upcoming fight with Miguel Cotto, but you might be surprised how he got to the top.  Check out this clip." />
<meta property="og:type" content="video" />
<meta property="og:url" content="http://www.youtube.com/watch?v=IvCCuuuJhd4" />
<meta property="og:image" content="http://i2.ytimg.com/vi/IvCCuuuJhd4/default.jpg" />
<meta property="og:site_name" content="YouTube" />

链接的应用程序是 YouTube应用程序 在Facebook上。您还可以在此处查看一些特定信息:标题,描述,类型,URL,Image,site_name。所有这些都可以帮助Facebook弄清楚当您将页面“分享”到您的朋友和网络时该怎么办。

Addthis按钮不会将任何此信息添加到标题中。它确实不能,因为它构建的是允许简单的页面共享,而不是为YouTube等视频网站共享电源。

因此,正如我之前所说,这“取决于视频如何嵌入页面中”。 Facebook只能以特定方式标记的特定格式处理视频,该视频源自特定的网站/应用程序。

要复制YouTube具有的嵌入式视频功能,您需要:

  • 创建自己的Facebook应用程序来供电
  • 向标题添加相同类型的元信息

如果您想要(我建议这样做),那么更容易的路线就是刮擦 <meta> 标签YouTube使用。因此,如果添加视频,请使用相同的YouTube应用程序ID,相同 <meta> 属性,你 应该 做得好。

其他提示

更新 要仅提取具有属性属性的元标记,我将以下内容组合在一起:

  <?php 

ini_set('display_errors', false); 
$page = "http://www.youtube.com...(the video ID)"; 
$page_data = file_get_contents($page); 

$doc=new DOMDocument();
$doc->loadHTML($page_data);
$xml=simplexml_import_dom($doc);
$meta=$xml->xpath('//meta');
foreach ($meta as $met) 
{
 if ($met['property'] != '')
 {
     echo '<meta property="'.$met['property'] . '" content="' . $met['content']."\">\n";
 }
}
ini_set('display_errors', true); 

?>

我知道它有点骇人听闻,但有效。我想我将与URL视频嵌入插件之一一起使用,并将元信息设置在模板头部。

许可以下: CC-BY-SA归因
scroll top