[Facebook]利用Iframe和PHP SDK實作應用程式

Facebook的應用程式開發支援多種程式語言,像是PHP、Java、ASP.NET、JSP等都可以,但其中以PHP的支援程度比較好,而且網路上可以找到的資料也比較多,門檻應該也屬於比較低的。以PHP開發來說,想要將開發好的應用程式嵌入到Facebook應用程式之中,目前提供兩種模式,一種是Iframe框架模式,另一種是FBML。

雖然FBML(Facebook Markup Language)對於Facebook的應用程式比較好開發,不過官方建議新使用者要開發應用程式的話,希望新手盡量改用Iframe來開發。在個人的應用程式介面中的範例程式碼,官方也是使用PHP SDK來實作,所以本篇我們將針對官方的應用程式,來做一個實際演練的測試。

目前關於FBML停用的爭議,在這篇文章中有解了,FBML語言會繼續支援,只是希望未來開發盡量改用IFrame並搭配JavaScript SDK and social plugins去處理,不過大家也別擔心太多,因為Facebook的應用程式常常在改來改去,今天看到的明天可能就不一樣了。所以就讓我們直接透過Ifame配上PHP SDK來測試一下吧!

尚未加入開發人員,請先加入:按這裡

第1步 首先請來到你的應用程式管理頁面,先選擇你的應用程式後,然後找到該頁面下方的「範例程式」區域,會有個「程式碼範例」,點一下吧!補充一下,在這區域會看到下方還有一些開發文件可以參考,有興趣可以點進去看看。

[Facebook]利用Iframe和PHP SDK實作應用程式

第2步 點開後,會跳出一個框框,裡面會有建置程式的說明,你可以照著說明內容實作,或是跟著本文的步驟走。首先請先下載PHP Library

[Facebook]利用Iframe和PHP SDK實作應用程式

第3步 下載後請用壓縮軟體打開,將裡面的「examples」和「src」兩個資料夾取出。取出後請將「examples」資料夾內的「example.php」檔案名稱改成「index.php」。

[Facebook]利用Iframe和PHP SDK實作應用程式

第4步 接著將剛剛改名好的「index.php」利用筆記本將檔案開啟,修改一下裡面的資料,將其中的「appId」後面的字串改成「應用程式ID」,將「secret」後面的字串改成「應用程式密鑰」,然後儲存檔案。

應用程式ID和應用程式金鑰,可在這邊找到,仍不清楚,可以參考這篇文章。

[Facebook]利用Iframe和PHP SDK實作應用程式

第5步 將剛剛解壓縮取出的檔案上傳到您的主機空間,這邊就不對主機空間多做說明,如果還不知道主機空間是什麼?可能您要先Goolge一下這些基本的資料囉!

[Facebook]利用Iframe和PHP SDK實作應用程式

第6步 將檔案上傳好後,來到你的應用程式管理頁面,找到你的應用程式並進入編輯畫面,切換到【網站】部分,請修改「Site URL」欄位,改成您程式的主目錄(也就是前面修改的index.php檔案之所在目錄)。

假設index.php的檔案是在:/public_html/myapp/examples/index.php

那Site URL的路徑請填:http://你的網站網址/myapp/examples/

[Facebook]利用Iframe和PHP SDK實作應用程式

第7步 切換到【Facebook整合】頁面,這邊的「Canvas URL」也請修改成和剛剛一樣的路徑即可,修改完畢後請點﹝儲存﹞。

別忘記,在Canvas Type要記得選成「Iframe」,否則會失敗喔!

下方的Iframe大小,建議勾選「Auto-resize」(自動調整大小)。

[Facebook]利用Iframe和PHP SDK實作應用程式

第8步 來到您的Facebook應用程式頁面,你會發現看到的是以下畫面,若有看到就表示您成功囉!

】應用程式在哪邊?

可以在這邊,找到你的應用程式,並點擊「應用程式專案頁」,進入後畫面左邊應該有個﹝前往應用程式﹞,進入後就是了。

通常網址會是:http://apps.facebook.com/myapp/ (myapp請改成你先前訂定的名稱)

[Facebook]利用Iframe和PHP SDK實作應用程式

第9步 您可以任意點擊其中的按鈕,第一次使用會請您授權給這個應用程式,點擊﹝同意﹞即可授權。

[Facebook]利用Iframe和PHP SDK實作應用程式

第10步 授權後可能會轉到您的程式實際位置(也就是虛擬主機網頁那邊),不過這只是設定登入後導向的問題,細部導向設定大家可以自己研究看看。您可以再回到剛剛的應用程式頁面,你會發現你的程式就出現在應用程式頁面中囉!

因為是Iframe框入模式,所以會出現捲軸(雖然前面有改成自動調整,不過似乎有預設值在,超過還是會出現捲軸),不過這些問題別擔心,可以透過JS去解決框架的大小,之後有機會會介紹一下。在這個頁面中的程式就是你剛剛修改的「index.php」這檔案內的東西,語法細節就不多做介紹,研究一下你就可以進一步的開發應用程式囉!

[Facebook]利用Iframe和PHP SDK實作應用程式