【问题标题】:Facebook Like / Recommend button doesn't show correct link to like or imageFacebook 喜欢/推荐按钮未显示指向喜欢或图像的正确链接
【发布时间】:2017-07-30 23:32:53
【问题描述】:

我已将 Facebook Like 代码(HTML5 选项)添加到我网站上的产品列表页面。但是,当产品被“喜欢”时,它会显示在用户时间线上,因为他们喜欢主页而不是产品页面,并且还会从主页中随机选择一张图片,而不是产品页面中的产品图片。

按照 Facebook 的指示,我在 body 标签下的产品列表页面上有以下代码:

<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/all.js#xfbml=1&appId=122370783453655";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

我在页面上列出的每个产品下方都重复了此代码。变量 $productURL 将是每个产品的唯一 URL。

<div class="fb-like" style="margin-right:auto;margin-left:auto" data-href="'. $productURL . '" data-send="false" data-layout="button_count" data-width="50" data-show-faces="false" data-action="recommend"></div>

我还在 $productUrl 页面中添加了以下代码:

<meta property="og:image" content="<?=$image?>" />
<meta property="og:image:secure_url" content="<?=$simage?>" />
<meta property="og:title" content="<?=$title?>" />
<meta property="og:description" content="<?=$desc?>" />
<meta property="og:url" content="<?=$url?>"/>
<meta property="og:site_name" content="<?=$sitename?>"/>
<meta property="og:type" content="Website"/>

【问题讨论】:

    标签: php html facebook facebook-like


    【解决方案1】:

    $productURL 页面应包含open graph markup

    【讨论】:

    • 对不起,我应该提到它。我将添加上面代码的示例。
    • 好的,刚刚注意到即使 $productURL 是正确的,og:url 设置为主页。这可能是造成它的原因吗?如果是这样,为什么它仍然选择随机图像而不是 og:image 中设置的图像?
    【解决方案2】:

    og:url 必须是您的产品网址。 Facebook 使用此 URL 发布对象的更新..
    转到您的App page.. -&gt;OpenGraph-&gt;Types-&gt;Browse Objects--> 确保您的对象映射到正确的 og:image。您可以在那里预览图像。
    希望这会有所帮助..如果您需要其他任何内容,请回复..:)

    【讨论】:

    • 感谢您的回复,但是,我不明白为什么 App 页面与它有任何关系,对此我有点困惑。我在下页的说明中没有看到任何关于此的内容:developers.facebook.com/docs/reference/plugins/like
    • 我对您在“OpenGraph”中使用“对象和操作”感到困惑,因为您使用的是 og:type。由于您没有使用任何“打开图表”对象,因此您不需要该标签。查看要在此@您共享的同一链接中使用的有效属性。
    • 好的,我已经将 og:url 从主网页更改为产品页面 URL,这没有任何区别。它似乎没有获取任何 og 元数据
    • 该页面是否包含相同的元标记。在link 中发布您的网址,看看是否发生任何错误。这应该会给你一个想法。
    • 这是一个非常有用的工具,谢谢。当我将 URL 添加到我想要的页面时,它显示一切都是正确的。所以所有的 OG 元数据都是正确的,一定是 HTML5 代码显示了点赞按钮,但是什么? :0(
    【解决方案3】:

    我从以下行中删除了 appid,它起作用了。

    js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=122370783453655";
    

    由于某种原因,当我试图获取代码时,它让我选择了一个应用程序,然后将应用程序 ID 附加到代码中。

    现在一切正常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多