1

Facebook アプリの特定のページにリンクする必要があります。アプリはページ タブになく、プロジェクトの制約によりページ タブに入れることはできません。

これは URL 形式です: https://apps.facebook.com/myappname

最後にパラメーター (/next.html や ?page=next など) を渡す必要があるため、アプリの外部から (電子メールから) 特定のページに直接リンクできます。

これをどのように設定しますか?私のプロジェクトでは、PHP と jQuery を使用しています。可能であれば、これをJavascriptで厳密に実行できるようにしたいと考えています。

ページタブやモバイルアプリをディープリンクする方法についてはたくさんの情報を見つけましたが、通常のアプリケーションにはそうではありません. 可能であるというメッセージを見つけましたが、オンラインや Facebook で実際に行う方法については何もありません。

ご協力いただきありがとうございます。

編集:

さて、PHPで動作するようになりました。この問題を抱えている他の人にとって、これは私がやったことです。

「?」を追加します。FB アプリの「サイト URL」の最後に、次のようなリダイレクト ファイルをアプリのランディング ページとして作成します (以下のように相対パスではなく絶対パスを使用してください)。

<?php
$query = $_SERVER['QUERY_STRING'];
$params = explode("/", $query);

if (in_array("gallery", $params)) {
    header("Location: /gallery.html");
    exit;
}
else {
    header("Location: /index.html");
    exit;
}
?>

この答えは、私がこれを理解するのに役立ったものです: $_GET on facebook iframe app

4

3 に答える 3

1

ここに何か不足している可能性がありますが、リンクしてみませんか- これにより、パスに追加されたhttp://apps.facebook.com/yourapp/something.phpキャンバス URL が自動的に読み込まれます。something.php

キャンバスの URL がディレクトリではなく特定のファイルを指している場合、これは明らかに機能しませんが、多くのアプリでこれが成功しています。

于 2013-02-11T17:24:02.290 に答える
0

? を使用している場合 $_GET リクエストを発行するだけなので、必要な情報はすべて $_GET 配列に存在します。

$_SERVER 配列を照会するのではなく、$_GET 配列を照会します。

あなたが持っていた場合:

http://myurl.com?info=foobar

次を使用して、その情報に簡単にアクセスできます。

$info = $_GET['info'];

ただし、最初に存在を確認することをお勧めします。

if (isset($_GET['info']))
{
$info =$_GET['info'];
}
else
{
$info="default";
}

ちなみに、 & 文字を使用すると、複数のパラメーターを指定できます。

http://myurl.com?info=foo&moreinfo=bar
于 2013-02-11T17:46:19.293 に答える
0

app_data必要に応じて使用できる特別なパラメーターを取得します。過去にそれを使用して、内部アプリの完全なクエリ文字列をエンコードしました。例えば、&app_data=My/Custom/Page

この SO の質問で詳細が見つかりました:ページ タブの URL からパラメーターを取得する

于 2013-02-11T13:27:57.733 に答える