Elsker det eller loathe det, alle og deres hund er på Facebook i dag; slik som alt som er populært i livet, har det blitt fullstendig undergravd av markedsføringstyper. En utrolig effektiv bruk av en Facebook-hostet merkevareside er å incentivisere folk til å like siden ved å skape noe hemmelig, kun medlemskap, vanligvis referert til som en "fan gate". Dette er fylt med eksklusive videoer, nedlastinger eller kanskje en kjøpekupong - vi bruker en her på MakeUseOf for å gi våre fans lett tilgang til alle dagens konkurranser.
Denne typen grunnleggende Facebook-app var relativt enkelt å lage tidligere, men Facebook krever nå at alle sidefanevappene skal ha en sikker versjon - en HTTPS- tilgangsadresse - men det er en annen $ 100 per år på toppen av de eksisterende hostingkostnadene for nettstedet ditt . Selv om du driver en liten e-handelsbutikk, kan du bruke PayPal som betalingsleverandør og har derfor ikke behov for SSL-sertifikater. Men bekymre deg ikke, da Facebook også har samarbeidet med Heroku - et cloud hosting-selskap - som betyr at du kan lage din egen grunnleggende Facebook-app, og vert det gratis, på en sikker server. Vil du vite mer? Les videre da jeg lager en grunnleggende Facebook fan-gate side fan app, hosted gratis, på Heroku.
Registrer som utvikler
Før du gjør noen programmer, må du være en registrert utvikler. Gå til developers.facebook.com for å komme i gang, og klikk på den grønne Register- knappen øverst til høyre hvis ikke allerede. Du trenger et telefonnummer for å registrere, men ellers er det gratis.
Hvis du allerede er registrert, klikker du på Applikasjoner øverst på verktøylinjen for å få oversikt over de nåværende appene dine.
Opprett en ny app
Her begynner moroa. Klikk på Opprett ny app . Navngivningen spiller ingen rolle, men velger selvsagt noe relevant. Navnefeltfeltet vil bli lagt til fanens side-URL når brukeren klikker på den kategorien. Du kan la det være tomt, men så ser de app-ID-en i nettadressen i stedet, noe som er litt ugligere. Navneområdet må også være unikt, så ikke engang bry deg om noe som "testapp" eller du får en feil. Endelig merk av i boksen som sier at du vil ha gratis hosting fra Heroku.
Etter at du har fylt ut captchaen, vil du bli invitert til å velge hvilken type hosting du vil ha fra Heroku - velg PHP, og godta. Facebook vil automatisk opprette en ny konto for deg på Heroku hvis du ikke allerede har en, og pre-populere URL-innstillingene i grunnleggende, noe som er fint av dem. Faktisk er det veldig vanskelig å ødelegge dette trinnet.
Fra siden for appdetaljer, vil du også angi typen app som en «Sidetabell», og sørg for at de aktuelle nettadressene er oppgitt der - igjen, dette bør være automatisk. Deretter lagre.
Heroku første skritt
Når du er ferdig, får du en epost fra Heroku med detaljer om hvordan du endrer passordet ditt, og laster ned Heroku-verktøylinjen for systemet. For de som ikke er kjent med Heroku, er det ikke en tradisjonell vert i den forstand at du kan logge inn på en FTP-adresse og laste opp filer. I stedet arbeider Heroku med Git, et versjonskontrollsystem. Når du har installert verktøybeltet, må du først klone nettstedet til din lokale stasjon - dette gir deg en katalog som er et speil av hva som er hostet på Heroku. Når du gjør endringer i disse filene, synkroniserer du dem alle tilbake igjen for å oppdatere Heroku.
Instruksjonene for å gjøre denne første synkroniseringen finnes i din velkomst-e-post, og det er en enkel en-linjekommando som er unik for din hostingadresse - bare kopier og lim inn fra e-posten. Din webadresse er helt vilkårlig - i mitt tilfelle var det tørr skog-7743 - det er tilfeldig generert og spiller ingen rolle i det hele tatt fordi brukere ikke ser det. Åpne den nylig opprettede katalogen, og ta en titt rundt.
Heroku har lagt inn ganske mye funksjonalitet, men vi trenger ikke mesteparten av det. Åpne opp index.php og ta en titt rundt. Finn følgende linjer nær starten på filen:
$ facebook = ny Facebook (array ('appId' => AppInfo :: appID (), 'secret' => AppInfo :: appSecret (), ' sharedSession '=> true, ' trustForwarded '=> true, ));
og umiddelbart etter det, kopier i disse:
$ signed_request = $ facebook-> getSignedRequest (); $ liked = $ signed_request ['side'] ['liked'];
Ikke bekymre deg om dette er altfor komplisert for deg - jeg gir deg en ferdig mal snart. En signert forespørsel sendes til appen din fra Facebook, som inneholder litt informasjon om brukeren - om de har admin tilgang og om de har likt siden eller ikke. Hvis du vil vite nøyaktig hva som er sendt, legg til følgende:
print_r ($ signed_request);
og du får en full utskrift av det signerte forespørselsobjektet.
På dette tidspunktet bør jeg innrømme at jeg hadde reelle problemer med å få den underskrevne forespørselen til å fungere - det viste seg at Heroku fjernet dataene på sidebelastning, og det var først etter at du lastet inn JS API (en god 10 sekunder etter den første sidelasten ) at siden skulle oppdatere og indikere den riktige "liked" statusen. Takket være dette Stack Overflow-spørsmålet, syntes løsningen å strekke ut koden som håndhever HTTPS for usikrede brukere. Slett følgende kodenavn ved begynnelsen av malen:
// Foreta https om produksjon hvis (substr (AppInfo :: getUrl (), 0, 8)! = 'Https: //' && $ _SERVER ['REMOTE_ADDR']! = '127.0.0.1') {header : https: // '. $ _SERVER [' HTTP_HOST ']. $ _SERVER [' REQUEST_URI ']); exit(); }
Nå, når siden er lastet, har du en boolsk variabel - det er en sann eller en falsk - som forteller deg om brukeren har likt siden eller ikke. Du kan bruke dette med en enkel hvis setning for å vise innholdet a eller b :
Plasser det like etter åpningstaggen i index.php . Nå, hvis du har forhåndsvisning på siden din på Heroku, vil du se at den har en rekke ekstra funksjonaliteter, viser sider du har likt, knapper for å legge inn oppdateringer osv. - Vi trenger ikke noe av det virkelig, så jeg fjernet alt sammen, inkludert JavaScript SDK for Facebook, forlater bare CSS og vår fan-gate. Her er fjernet koden jeg endte med å bruke (dette er et bilde - kopi lim fra PasteBin hvis du ønsker) :
Du bør redigere seksjonene som sier "ikke en fan" og "fan" for å inneholde henholdsvis standard og hemmelig innhold. Hvis du foretrekker å beholde innholdet i en egen fil, bruk:
omfatte ( "secret.html");
for å importere eksterne filer.
Synkroniser med Heroku
Når du har gjort alle nødvendige endringer i filen din, må du synkronisere sikkerhetskopieringen med Heroku - vi gjør dette ved å "skyve" vår lokale kopi til "hovedgrenen" på Heroku. Kontroller at du er i riktig katalog fra kommandolinjen, skriv inn:
git commit -am "endrer meldinger"
(du kan erstatte endringsmeldinger med et notat til deg selv om hvilke endringer du faktisk gjorde denne gangen - det er god praksis å beholde disse postene)
og så
git push heroku master
Vent til kommandoen er ferdig, som det kan ta en stund.
Endelig trinn: Legg til appen på siden din
Nå som appen er bygget, må vi faktisk legge den til som en fane til merkesiden din. Merkelig er dette gjort ved hjelp av en spesiallaget URL:
https://www.facebook.com/dialog/pagetab?app_id=YOUR_APP_ID&redirect_uri=YOUR_APP_URL_ON_HEROKU
Erstatt YOUR_APP_ID med IDen som er oppført på appens detaljer, og YOUR_APP_URL_ON_HEROKU med nettadressen for din Heroku-hosting. Hvis du laster inn denne spesielle nettadressen, starter du dialogboksen "legg til på siden", hvor du kan velge riktig merkeside for å legge til sidefanen din til.
Så hei presto - det blir en ny knapp på siden din, slik:
Som du kan se, har vi ikke angitt et bilde for fanen ennå, men det er igjen som standard - du kan gjøre dette fra appsiden din. Det er egentlig det skjønt; Hvis du laster den kategorien, vil erstatning index.php vise deg som fan eller ikke fan . Eller hva du tilpasset den til å vise:
Jeg innrømmer - denne prosessen var vanskeligere enn jeg forventet, men det unngår helt å måtte være vert for noe på din egen server eller få SSL-sertifisert. Hvis du har noen spørsmål eller problemer, spør deg bort i kommentarene, og jeg vil prøve å hjelpe deg. Hvis kommentarene er stengt, gå videre til vårt svarsted; og vær så snill, hvis du fant denne veiledningen nyttig, vennligst del den på ditt favoritt sosiale nettverk. Dessuten vil du sikkert sjekke ut vår gratis, komplette guide til sosiale medier markedsføring, og vurdere å legge Pinterest til din strategi også.