2011-10-25 42 views
4

我試圖使用Facebook PHP SDK對我的粉絲頁面進行地理定位。使用Facebook API地理定位頁面帖子

以下代碼片段成功地將消息發佈到我的牆上,但地理位置定位功能未採用。

我是編程新手,我盡我所能去遵循文檔here,但它很稀少 - 我不確定我的語法是否正確。

任何幫助將非常感激。

//compiling the geotargeting parameters 
$geoTarget = "{'cities':'Richmond,VA','regions':'Virginia','countries':'US'}"; 

//my arguments 
$args = array(
'access_token' => $page_access_token, 
'message'  => "this is my message", 
'targeting' => $geoTarget 
); 

//posts the message 
$facebook->api("/$page_id/feed","post",$args); 
+0

如果您確定自己正在關注這些示例並它不工作它可能是值得報告這個平臺上的錯誤[bug跟蹤器](https://developers.facebook.com/bugs/) – Igy

+1

我得到它的工作,用數字標識符取代阿爾法城市名稱。 – Duplosion

回答

2

領域是中郵表

描述字段可能包含逗號分隔的有效的國家,城市,如果一個網頁的發佈者位置定位的語言列表中指定/語言隱私。

http://developers.facebook.com/docs/reference/api/post/

+0

該文檔說使用'feed_targeting'參數。這是一個錯誤?還是僅僅是新的領域使用...所以混亂!比照http://developers.facebook.com/docs/reference/api/page/#targeting – maxwell2022

2

爲了更方便,這是位需要http://developers.facebook.com/docs/reference/api/page/#targeting

這會給上如何定位的區域過的信息。 http://developers.facebook.com/docs/reference/ads-api/get-autocomplete-data/

你需要完成問題的目標是什麼:

的國家一點是正確的。 弗吉尼亞州的地區代碼是51 里士滿(您可以通過搜索_「> https://graph.facebook.com/search?q=vi &類型= adregion & match_country_code =真& COUNTRY_LIST = US & =的access_token _找到)城市id爲2538983(您可以通過搜索找到_「> https://graph.facebook.com/search?q=richmon &類型= adcity &上限= 150 & =的access_token _)

所以地理位置定位會be

$geoTarget = "{'cities':[2538983],'regions':[51],'countries':'US'}"; 
+0

你是否真的嘗試過這個,你是如何驗證它的工作原理?我沒有通過api和您引用的文檔頁面看到這方面的工作,您還應該能夠通過GET方式讀取帶有fields = targeting的帖子的定位,但即使access_token擁有manage_pages專用權限,也會出現Oauth 100錯誤。在用戶界面中,它不會顯示正在發佈的帖子(顯示爲公開),而通過用戶界面定位的帖子在懸停時顯示供稿目標爲:。 – tribalvibes

相關問題