Теперь, когда FBML устарел, мне кажется, что новых JS SDK и FB Connect будет достаточно, чтобы иметь приложение iframe на FB. Это понимание правильно?
Предыдущие ответы на этот вопрос были основаны на FBML, который все еще поддерживался тогда Приложение Facebook против сайта Facebook Connect
Например, все старые приглашения FBML теперь можно заменить диалогами на основе FB Connect JS, как описано здесь http://developers.facebook.com/docs/reference/dialogs/
Прямо сейчас Вы должны выбрать между JS и PHP SDK или их комбинацией в зависимости от того, что вы создаете.
Обычно мы работаем с PHP SDK для аутентификации и используем JS для диалоговых каналов подачи (например, для публикации на стене).
Если вам нужна пара отправных точек, у Thinkdiff.net есть два отличных поста с загружаемым исходным кодом и демонстрацией, которые могут помочь вам решить, что лучше для вашего проекта.
Вот пример JS: http://thinkdiff.net/facebook/new-javascript-sdk-oauth-2-0-based-fbconnect-tutorial/
Вот пример PHP: http://thinkdiff.net/facebook/php-sdk-3-0-graph-api-base-facebook-connect-tutorial/
Facebook Connect применяется к веб-сайтам за пределами Facebook, а не к приложениям Canvas или Tab.
Обычно вам потребуется использовать SDK для JavaScript и PHP или что-то еще для предпочитаемой вами альтернативы PHP.*