我在墙上的帖子中标记人员时遇到了一些严重问题。我正在使用CakePHP并使用FB API POST到Graph API。这是代码:
$theMsg1 = $this->Connect->user('name').' tagged ';
$theMsg2 = $friendName.' on the IF Tag website.';
$msg1Len = strlen($theMsg1);
$fbNameLen = strlen($friendName);`
$fbcall = FB::api($fbID.'/feed', 'POST', array(
'name' => $theTag['Tag']['name'],
'caption' => 'IF Tag is an application that allows you to interact with people on Facebook.',
'message' => $theMsg1.$theMsg2,
'message_tags' => array(
$msg1Len => array(
'id' => $friendID,
'name' => $friendName,
'offset' => $msg1Len,
'length' => $fbNameLen
),
'picture' => 'http://patronsocialclub.com/img/global/head/drinkmaker.gif',
'link' => 'iftag.local'
)
));
根据我的理解和我读过的内容,我应该使用message_tags对象标记帖子中的人,但它根本不起作用。它没有给出任何错误,只是没有标记。
我也尝试使用我见过的其他帖子中的@[{userid}:1:{username}]
,但这似乎与API的当前迭代无关。
答案 0 :(得分:2)
请在此处查看我的回答Facebook Graph API Post with_tags option
它的要点是
我认为你想要使用的只是“标签”,它应该只包含这里指定的id https://developers.facebook.com/docs/reference/api/user/#posts
**请注意,如果不指定地点,则无法执行此操作
Facebook现已发布提及标记,这可能是您需要的解决方案https://developers.facebook.com/docs/opengraph/mention_tagging/,但它需要自定义开放图表操作。
答案 1 :(得分:0)
目前无法在状态更新中标记好友或通过API发布帖子。 这是他们的愿望清单,这里是链接