0

我正在向我的网站添加一个 Facebook 分享按钮。我可以将其设置为在帖子中包含图片,但我希望它包含视频。 我将如何使用FB.ui 提要参数来做到这一点?

这是我添加图片的工作代码:

<!-- Facebook share script -->
<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.3&appId=*********";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

 <div class="fb-share-button" data-href="#{@project_url}" data-layout="icon">
       <%= image_tag "facebook.png", :class=>"social_icon" %>
 </div>

$('.fb-share-button').click(function(e){
    e.preventDefault();
    FB.ui(
        {
        method: 'feed',
        name: "<%=@project.user.username%>",
        link: '<%=@project_url%>',
        picture: '<%=@project.images.first.image_file_url%>',
        caption: ' ',
        description: ' ',
        message: ''
    });
});
4

2 回答 2

0

您需要在source参数中指定视频的 url。你可以在这里阅读更多。

来源:附加到此帖子的媒体文件(SWF 或 MP3)的 URL。如果是 SWF,您还必须指定图片以提供视频的缩略图。

于 2015-05-25T15:52:45.387 回答
0

我没有使用 FB 提要方法,而是使用了分享,这来自我为我的网页包含的元标记。这最终奏效了!

作为参考,这就是它的样子:

$('.fb-share-button').click(function(e){
    e.preventDefault();
    FB.ui({
      method: 'share',
      href: '<%=@project_url%>',
    }, function(response){});
    });

和我的元标记:

<!-- Facebook tags -->
<meta property="fb:app_id"             content="811332718952118"/>
<meta property="og:type"               content="video.other"/>
<meta property="og:url"                content="<%=@project_url%>" />
<meta property="og:title"              content="<%=@project.user.username%>'s Spin" />
<meta property="og:description"        content=" " />
<meta property="og:video"              content="<%=@project.video.video_file_url%>" />
<meta property="og:video:type"         content="video/mp4" />
<meta property="og:video:width"        content="700"/>
<meta property="og:video:height"       content="700"/>
<meta property="og:image"              content="<%=@project.spins.first.images.order(:position).first.image_file_url%>" />
于 2015-05-27T15:23:27.130 回答