Но я не знаю, как использовать эти коды в моем приложении и где их разместить?
Существует несколько способов сделать это, но только один:
<!doctype html>
<html xmlns:fb="http://www.facebook.com/2008/fbml">
<head>
<!-- YOUR HEADER CONTENT -->
</head>
<body>
<div id="fb-root"></div>
<!-- You Page Content HERE -->
<script>
window.fbAsyncInit = function() {
FB.init({appId: 'your app id', status: true, cookie: true, xfbml: true});
FB.Canvas.setSize();
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol +
'//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
</body>
</html>
Поместил ли я этот код в каждый файл моего приложения?
Если вы хотите изменить размер iFrame, вам нужно включить код такого типа на каждую страницу.
Должен ли я также изменить настройки приложения на странице своего приложения для разработчиков?
Чтобы это работало, вам нужно выбрать опцию автоматического изменения размера в приложении разработчика.
Вы также хотите рассмотреть FB.Canvas.setAutoResize , если размер вашего контента является динамическим.
Вы также можете столкнуться с проблемами, когда FB.Canvas.setSize срабатывает слишком рано, и в этом случае вы можете использовать setTimeout, чтобы задержать его - исходя из опыта, который я обнаружил, 200 мс будет оптимальным:
window.fbAsyncInit = function() {
FB.init({appId: 'your app id', status: true, cookie: true, xfbml: true});
window.setTimeout(
function() {
FB.Canvas.setAutoResize();
},
200
);
};