0

我想在特定页面上为单个产品安装“喜欢”按钮。他们的方式是这样做的吗?我只能为页面本身安装“Like”按钮。示例 我在一个页面上有 3 个产品。我需要此页面上的 3 个“喜欢”按钮,以便用户具体了解他们喜欢的产品。

4

1 回答 1

0

Open Graph(协议)基本上假设每个对象(=产品)都有自己的 URL 和网页。这样很容易,您只需在每个产品页面上设置正确的 og:title、og:url、og:image 等。

http://yourdomain.com/product-A
http://yourdomain.com/product-B
http://yourdomain.com/product-C

在产品概述页面http://yourdomain.com/products上,您将只有 3 个赞按钮:

<div class="fb-like" data-href="http://yourdomain.com/product-A"/>
<div class="fb-like" data-href="http://yourdomain.com/product-B"/>
<div class="fb-like" data-href="http://yourdomain.com/product-C"/>

完毕!

如果出于某种原因,您没有单独的产品页面,则必须在 Facebook Crawler 的单独 URL 上设置“虚拟”页面。然后,您将通过用户代理检测爬虫并为其提供正确的 OG 元标记集(页面不必包含多于 with 标记)。普通用户应该被重定向到产品概览页面。下面是一些应该做到这一点的 PHP 代码:

<?php
if (!(strpos(strtolower($_SERVER["HTTP_USER_AGENT"]),"facebookexternalhit") === false)) {
  // Its Facebook crawler, give him what he needs!
  echo '<html><head>';
  echo '<meta property="og:title" content="Product A">';
  echo '<meta property="og:url" content="http://yourdomain.com/product-A">';
  echo '</head></html>';
} else {
  // normal user, lets redirect
  header("Location: http://yourdomain.com/products");
}
?>
于 2013-01-23T22:46:02.027 回答