Хорошо, если пользователь находится за пределами Facebook, этот фрагмент сценария перед тем, как тег HTML body должен перенаправить его обратно на вашу страницу в Facebook:
<script language="JavaScript" type="text/javascript">
<!--
if (self == top) {
window.location = "http://apps.facebook.com/YOUR_APP_PAGE";
}
-->
</script>
не забудьте изменить бит YOUR_APP_PAGE на что-то вроде:
'Мое-приложение? App_Data = страница-местоположение'
Вы можете отправить запрос? App_data на свою страницу Facebook с помощью php и добавить страницу, с которой был перенаправлен ваш веб-сайт, чтобы app_data могла сообщить вашему приложению о загрузке этой страницы, но в Facebook.
Так что стоит поискать в Facebook app_data
Если вы хотите изменить стиль вашей страницы в зависимости от того, отображается она на Facebook или нет, используйте это:
<script language="JavaScript" type="text/javascript">
<!--
if (window.self = "http://apps.facebook.com/") {
var element = document.getElementById('html');
element.className = "facebook";
}
-->
</script>
и измените свой HTML-тег с id = html следующим образом:
<html id="html" xmlns:fb="http://www.facebook.com/2008/fbml">
это позволит вам использовать имя класса .facebook переназначить любой стиль для вашей страницы, который вам нравится.
Если вам нужно установить некоторые начальные настройки php, например страницу перенаправления, то вы можете использовать этот код в php для определения, находитесь ли вы в Facebook, однако этот код не может определить, находится ли пользователь в Facebook или нет после того, как он авторизовался:
if(!empty($_POST['signed_request'])){
//do something with php here...
}
Примечание:
Маловероятно, что у пользователя Facebook на странице вашего приложения отключен JavaScript, поэтому мы можем использовать приведенный выше код php для установки перенаправлений и т. Д. *
php на самом деле не должен полагаться на $ _SESSION или куки для этого, если пользователь решит посетить вашу страницу, выполнив вход в приложение Facebook, потребуется php для обновления страницы, чтобы определить, что они больше не находятся в Facebook с сеанс или файл cookie.
После мысли:
Вся эта информация должна быть в SDK Facebook, поскольку управление перенаправлениями и обнаружение приложений - это кошмар с ужасной документацией Facebook.
Надеюсь, это поможет вам:)