Facebook Пригласить друзей Box с iframes - PullRequest
0 голосов
/ 16 июня 2011

Мне бы хотелось, чтобы окно «Пригласить друзей» было внизу моей целевой страницы в Facebook. Это работало со старым fbml, но с iframes это не обнаруживается. Вот код:

<div style="padding: 0px;"> <fb:request-form method="get" action="index.php" content="Fan" <fb:req-choice url='http://www.facebook.com/xyz' label='YES' />" type="page" invite="true" rows="3"> <div class="clearfix" style="padding-bottom: 10px;"> <fb:multi-friend-selector condensed="false" style="width:520px;" showborder="black" actiontext="Invite your friends" rows="3" cols="3"/> </div> </fb:request-form> </div>

Есть предложения?

1 Ответ

3 голосов
/ 16 июня 2011

Если вы хотите, чтобы FB пригласил друга в iFrame, вам нужно сначала запустить API Connect для Facebook, и для этого нам потребуется инициализация XFBML внизу страницы.

Вы должны использовать тег fb:serverfbml, чтобы заставить работать fb: friend-selector.

Вот тело iFrame

<fb:serverfbml style="width: 650px;"> 
<script type="text/fbml">
    <fb:fbml> 
        <fb:request-form
            action="http://your-site.com/invite/sent"
            method="POST"
            invite="true"
            type="My App"
            content="Try out my app!
                <fb:req-choice url='http://your-facebook-canvas-url'
                label='<?php echo htmlspecialchars("Accept button text",ENT_QUOTES); ?>'
                /> 
            " > 
            <fb:multi-friend-selector
                showborder="false"
                actiontext="Invite your friends."
                exclude_ids="If any excluded Ids will goes here"
                rows="3"
            /> 
        </fb:request-form> 
    </fb:fbml>
</script> 
</fb:serverfbml>

Приведенный выше скрипт отобразит приглашение друга iFrame.

Вот код FB.connect

<script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php" type="text/javascript"></script>
<script type="text/javascript">
    FB_RequireFeatures(
        ["CanvasUtil"],
        function(){
             FB.XdComm.Server.init('/xd_receiver.html');
             FB.CanvasClient.startTimerToSizeToContent();
        }
    );
</script>

<script type="text/javascript">
    FB_RequireFeatures(["XFBML"], function(){ FB.Facebook.init("Your Facebook API Key", "/xd_receiver.html"); });   
</script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...