1

我正在尝试自动与图形 api 共享链接,但通过指定区域设置,以便共享链接仅显示给例如英语用户。

这是使用 Facebook php sdk 的 PHP 代码。

try {
    $res = $facebook->api('/' . $PAGEID . '/feed/', 'POST',
    array(
        'access_token' => $pageToken,
        'link' => $url,
        'scrape' => 'true',
        'locale' => 'en_US'
    ));
} catch(FacebookApiException $e) {
}

这是我分享的网址头部的元数据

<meta property="og:description" content="" />
<meta property="og:image" content="http://www.example.com/image.jpg" />
<meta property="og:locale" content="en_US" />
<meta property="og:site_name" content="Example.com" />
<meta property="og:title" content="Example.com" />
<meta property="og:url" content="http://www.example.com/" />

我试图通过 en_us 更改 en_US。我还在“App Dashboard Localization”中选择了主要语言法语和第二语言英语。

共享链接有效,但对于每个人来说,语言环境都不起作用...... :(

编辑已解决:所有英语语言环境的示例语言环境的 id 可以通过查询https://graph.facebook.com/search?q=en&type=adlocale找到

try {
    $res = $facebook->api('/' . $PAGEID . '/feed/', 'POST',
    array(
        'access_token' => $pageToken,
        'link' => $url,
        'targeting' => "{'locales':['6', '51', '24', '1001']}"
    ));
} catch(FacebookApiException $e) {
}
4

1 回答 1

0

我相信您正在寻找的是帖子定位,而不是语言环境。

帖子定位允许您将帖子限制为以下条件:

  • 年龄
  • 性别
  • 关系状态(广告创建流程中的“感兴趣”)
  • 教育
  • 大学毕业生(大学名称,专业年份)
  • 在高中时
  • 工作场所
  • 地理位置
  • 国家
  • 状态
  • 城市

不利的一面是,此功能仅适用于页面,而不适用于用户帖子,但是,有一个技巧可以为您提供相同的行为,但会花费您一些时间和精力。

根据这个页面,在普通用户帖子中,有一个隐私参数,可以自定义排除用户,或者只对特定用户可见,你需要做的是:

  • 阅读用户的朋友列表(并过滤您想要的国家),这将需要扩展权限。
  • 将过滤后的给定朋友列表输入隐私参数(讲英语的人、来自加拿大的人、喜欢特定页面的人等)

正如我所说,这需要更多的工作,但如果你真的需要那个功能,它会完成工作。

于 2013-06-11T20:47:10.760 回答