我想我已阅读过去关于这个论点的所有帖子,但我想知道某个主题是否有变化。
现在可以使用Facebook PHP SDK在消息文本中提及页面了吗? 像这样:
$post_params = array(
'access_token' => PAGE_TOKEN,
'message' => 'This is a message tagged to @[PAGE_ID]
);
$postStream = $this->facebook->api("/" . PAGE_ID . "/feed", 'post', $post_params);
我指的是这个页面:https://developers.facebook.com/docs/opengraph/guides/tagging/
答案 0 :(得分:0)
实际上,到目前为止,我通过以下方式解决了问题:
1)通过正则表达式替换可能的“facebook related”uri来“规范化”页面名称
$replacePattern = '((https|http)?(:\/\/)?(www\.)?(facebook\.com)?(\/)?)';
$page_name = preg_replace($replacePattern, '', $page_name);
$page_name = 'https://www.facebook.com/' . $page_name;
2)使用“标准化”uri调用Facebook API:
$fql = "SELECT id, name FROM profile WHERE id in (SELECT id FROM object_url WHERE url='" . $page_name . "')";
$param = array(
'method' => 'fql.query',
'query' => $fql,
'callback' => ''
);
$response = $facebook->api($param);