1

私は小さなクイズを作っています。そこでは、あなたが最も似ている子供向けの本シリーズのどのキャラクターを見つけることができます。あなたはここでそれを見ることができます:https ://www.facebook.com/forlagetbabu/app_471991576163640 (それはデンマーク語です)。

すべての質問に答えた後、ユーザーは結果を取得します。次に、ユーザーにタイムラインで結果を共有するように促すことができるようにしたいと思います。不可能な場合、またはもっと簡単な場合は、クイズアプリを使用したことを共有してもらいたいと思います。

アプリはphpで記述されており、開発者サイトからの公開をユーザーに促すためのコードを追加しました:https ://developers.facebook.com/docs/channels/ :

<div id="fb-root"></div>
      <script src="http://connect.facebook.net/en_US/all.js">
      </script>
      <script>
         FB.init({ 
            appId:'YOUR_APP_ID', cookie:true, 
            status:true, xfbml:true 
         });

         FB.ui({ method: 'feed', 
            message: 'Facebook for Websites is super-cool'});
      </script>

これは機能します。問題は、[結果を表示]をクリックした直後にプロンプ​​トウィンドウが表示されるため、ユーザーが結果を表示する機会がないことです。数秒後に表示させることはできますか、それとも共有した後に結果ページに戻すように指示することはできますか?これどうやってするの?私はすべての助けに感謝します!!!

4

1 に答える 1

1

プロンプト ウィンドウが開くのを遅らせたい場合は、Javascript タイムアウトを使用できます。

setTimeout(function(){shareResults()},2000);     //waits 2 seconds

function shareResults() {
FB.ui({ method: 'feed', 
        message: 'Facebook for Websites is super-cool'});
}

または、ポップアップを起動する「結果を見る」ページに「結果を共有する」ボタンを配置します。

<a href="#" onclick="shareResults()">Share Results</a>
function shareResults() {
FB.ui({ method: 'feed', 
        message: 'Facebook for Websites is super-cool'});
}

また、使用可能なページの php 変数がある場合は、それらを共有メッセージにエコーできます。

<?php
$userScore = 100;
?>

function shareResults() {
FB.ui({ method: 'feed', 
        message: 'I got <?php echo $userScore; ?> points in the game'});
}

それが役立つことを願っています

于 2012-09-12T15:22:44.187 に答える