2011-08-02 9 views
1

これはどのように行われますか?私はいくつかのiframeコンテンツが隠されているのを見てきました。その場合は、グラフィックが上を向いていて、「私たちのような...」の効果があると言っています - あるいは、オファーは - たとえば、ページが「好き」FB iframeタブ - ページが「好き」でない場合のコンテンツの非表示/変更

私はこのために掘り下げたが、運がなかった。それは終わりましたが、私はどのFBページがそれをやっていたかを知る先見線を持っていませんでした....

+0

これはFacebook SDKに関するコーディングに関する質問です。この質問に対する答えは、ウェブマスターではなくスタックオーバーフローで見つかるでしょう。 – Ciaran

答えて

2

これを実現するには、Facebookアプリケーションが必要です。これを設定したら、ページを作成し、ページが読み込まれたら、ユーザーは個人情報にアクセスしてFQLを使用してページが好きかどうかを確認できるようにアプリケーションを認証する必要があります。以下のコードは、Facebookユーザーがページを気に入っているかどうかを確認しますが、ユーザーがアプリケーションへのアクセスを許可した場合にのみ実行されます。

<div id="fb-root"></div> 
<script src="http://connect.facebook.net/en_US/all.js"></script> 
<script> 
    FB.init({ 
     appId : 'yourAppId', 
     status: true, 
     cookie: true, 
     xfbml : true 
    }); 
    FB.getLoginStatus(function(response) { 
     if (response.session) { 
      var user_id = response.session.uid;   
      var page_id = "xxxx"; //The Page that you want to Like 
      var the_query = FB.Data.query("SELECT uid FROM page_fan WHERE page_id = {0} and uid={1}", page_id, user_id);   
      the_query.wait(function(rows) {    
        if (rows.length == 1 && rows[0].uid == user_id) {     
        $("#divWhenLiked").show();   
        } else {     
        $("#divWhenNotLiked").show(); 
        }   
      });  
     } else {   
      // user is not logged in 
      $("#divNoPermission").show();    
     }  
    }); 
</script> 

はコードでは、ユーザーがページを気に入らない、あなたのアプリケーションを許可し、ページを高くしているかどうかに依存して表示されます3個の <div>タグが表示されます。

http://www.facebook.com/dialog/oauth?client_id=yourAppId&redirect_uri=http://yourWebsite/yourRedirectPage 

これは、Facebookのからのポップアップウィンドウが表示されます。これは、たとえば、アプリケーションにオフにリンクするハイパーリンクをする必要がありますあなたが仕事を得るためには、権限を示し<div>タグでユーザにアプリケーションへのアクセス許可を求める。その後、リンクで指定したリダイレクトページにリダイレクトされます。あなたのRedirectPageで、あなただけの<body>タグ内のコードの簡単なリダイレクトピースをする必要があります:

<script> 
window.location.href = "http://www.facebook.com/pages/YourApp?sk=app_yourAppId"; 
</script> 

あなたはFacebookアプリケーションのページからハイパーリンクを取得することができます。お役に立てれば。

関連する問題