2011-01-28 22 views
0

Facebook APIをWordpressに統合しようとしています。私はのためのWP-ブログ - header.phpのか、index.phpの中のコードを入れない限り、WordpressでのFacebookの統合

$facebook = new Facebook(array(
    'appId' => '?', 
    'secret' => '?', 
    'cookie' => true, 
)); 

$session = $facebook->getSession(); 

は必ず空白のセッションを返します。私はPHPで直接ページを編集するとき、私はAPIを含めることはできませんようですWordpress自体をインストールします。これは、クッキーを設定しようとしているためだと思うし、この時点ではできません。私はこれをどのように働かせることができるか知っていますか?私は本当にいくつかの愚かな作業を作成する必要はありません。

+0

あなたは今どこに置いていますか? – Jage

答えて

1

これが役立ちます。 SmashingMagからの完全な記事です。

http://www.smashingmagazine.com/2009/09/14/how-to-integrate-facebook-with-wordpress/

私はあなたにリンクするキャンバスを持っていると思います。この記事では、Facebookのブログ投稿をFacebookに追加し、FacebookにFacebookを追加する方法を紹介します。

+0

これはFacebookの古いAPIを使ってあなたのブログをFacebookにインポートするためのものです。私は質問者がFacebookの[Graph API SDK](https://github.com/facebook/php-sdk/)の使い方を尋ねていると思います。 – SideOfBacon

+0

私はグラフAPIを読んで、あなたのワードプレステンプレートのheader.phpファイルにあなたのコードを含める必要があります。これにより、各ページのセッション情報が確立されます。 ブラウザでCookieが有効になっていることを確認してください。他のブラウザを試してみてください。 また、私はそれが投稿のためだと仮定していますが、配列内に実際のキーがあることを確認してください。 :) – Wrenbjor

+0

私はあなたがOpen Graph APIを見ていたと思います.Graph APIではなく、Facebookには面倒な名前の複数のAPIがあります。 Open Graphはもっと軽量で、ヘッダーにたくさんのメタタグを追加する必要があります(私はあなたがそれを混乱させるかもしれないと思うのです)。グラフAPIはより重視されており、どこでも(制限内に)配置できる必要があります。 – SideOfBacon

0

クッキーがまだ読み込まれていないので、それが完全ではないと私は確信しています。しかし、この方法を試してください。

<?php 
function facebook_setup() { 
global $facebook; 

    $facebook = new Facebook(array(
    'appId' => '?', 
    'secret' => '?', 
    'cookie' => true, 
)); 
} 
add_action('init', 'facebook_setup'); 
?> 

そして中にそのグローバル変数を呼び出す:

は、あなたのテーマのfunctions.phpファイル(「initの」アクションが、これはクッキーとそのようなものがロードされている長い後呼び出さ行う必要があります)に次の行を追加します。あなたのテンプレート。例えば

<?php 
    global $facebook; 
    $me = $facebook->api('/me'); 
    print_r($me); 
?> 

これで問題が解決するかどうかはわかりません。 Facebook's Oauth flowのセットアップ方法によっては、別の原因が考えられます。