Mohu používat Facebook je fb: přítel volič v iframe?

hlasů
21

Snažím se používat služby Facebook fb:friend-selectorFBML značku, ale moje aplikace je spuštěna v iframe. Je možné použít tuto značku iframe? Pokud ano, má někdo nějaké příklady?

Položena 04/05/2009 v 15:47
zdroj uživatelem
V jiných jazycích...                            


4 odpovědí

hlasů
16

Ano, je to určitě možné, ale budete muset použít Facebook Connect a XFBML . Konkrétně, že chcete použít fb: serverfbml značku získat FB: přítel-voliče práci. Mám aplikaci, iframe, kterým mohu použít toto všechno a na FB: kamaráda volič v normě „pozvat přátele na váš app“ kontextu, a funguje to skvěle.

Zde je tělo mého souboru šablony, která se dostane výstup uvnitř těla mého iframe:

<fb:serverfbml style="width: 650px;"> 
<script type="text/fbml">
    <fb:fbml> 
        <fb:request-form
            action="http://example.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 to try My App."
                exclude_ids="<?php echo $excludeIds; ?>"
                rows="3"
            /> 
        </fb:request-form> 
    </fb:fbml>
</script> 
</fb:serverfbml>

V zápatí stránky, mám standardní kód Facebook Connect, který bude načíst a vykreslení FB: serverfbml obsah:

<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>

To by mělo být vše, co potřebujete (vyplnit vlastních možností případně prostředků, samozřejmě). Budete muset nastavit Facebook Connect pro práci se souborem přijímače napříč doménami. Navrhuji v návaznosti na vykreslování kroků XFBML .

Odpovězeno 04/05/2009 v 20:10
zdroj uživatelem

hlasů
3

Vzhledem k tomu, že mnoho otázek o přítele voliče v rámci iframe.

Kluci správný sintax nyní je <fb:serverfbml width="650px">

Odpovězeno 29/07/2010 v 01:39
zdroj uživatelem

hlasů
9

Otázkou v tomto vlákně je stále aktuální, ale odpověď je zastaralá. Byste měli použít novou javascript SDK. To by mělo nahradit druhý fragment kódu odeslaný zombat

<script src="http://connect.facebook.net/en_US/all.js"></script> 
<script type="text/javascript">
   FB.init({appId: 'your app id',
       status: true,
       cookie: true,
       xfbml: true});
   FB.Event.subscribe('auth.sessionChange', function(response) {
     if (response.session) {
       // A user has logged in, and a new cookie has been saved
     } else {
       // The user has logged out
     }
   });
</script>

více info zde: http://www.clickonchris.com/2010/11/facebook-javascript-sdks/

Odpovězeno 09/11/2010 v 06:54
zdroj uživatelem

hlasů
0

jeden velký a důležitý bod, který se minul je, že mnozí z vás (včetně mě) držet ve skriptech téměř kdekoliv ... ale „FB“ load.js soubor musí být načten okamžitě po tagu body.

alespoň to je to, co jsem našel, aby vše fungovalo a Humm odpovídajícím způsobem. Našel jsem ho na příspěvek na nějakém jiném místě (nebyl jistý, jestli bych měl post tady, nebo taky ne ...), ale to přišlo poté, co strávil bezpočet hodin, dělá výše zmíněný - stejně jako následující každý jiný 1,2, 3. krok punč do získání iframe velikosti správně ...

a teď jsem se dostal do práce :)

Odpovězeno 31/01/2011 v 16:20
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more