Přejít k navigační liště

Zdroják » Různé » Odeslání příspěvku na stránku přes FB API

Odeslání příspěvku na stránku přes FB API

Články Různé

Jak v PHP odesílat příspěvky na Facebook stránku (Page) pomocí Facebook API.

Nálepky:

Článek původně vyšel na autorově webu Je čas.

Máme-li vlastní FB stránku a chceme například dát vědět jejím fanouškům o novém příspěvku na webu, hodí se možnost odeslat zprávu na Facebook přímo z redakčního systému. Jak toho docílit?

Vytvoření aplikace

  1. Kliknout na stránce developers.facebook.com na Apps → Create a New App.
    vytvoreni-nove-aplikace
  2. Zadat název aplikace a určit kategorii. V případě, že chceme využít API k posílání příspěvků na svou FB stránku je vhodné zvolit Apps for Pages.
    vytvoreni-aplikace
  3. Po opsání ověřovacího kódu by se aplikace měla vytvořit.
    vytvorena-aplikace
  4. Na stránce developers.facebook.com/tools/explorer/ si potom aplikaci vybereme a zvolíme Get Access Token.
    access-token
  5. V objevivším se okně zvolíme oprávnění, která budeme potřebovat. Pro přispívání na vlastní Facebookovou stránku se budou hodit položky manage_pages a publish_actions z karty Extended Permissions.
    nastaveni-opravneni
  6. Nyní je třeba aplikaci udělit oprávnění ze svého účtu na Facebooku.
    prispivaniNejprve povolit aplikaci přístup do svého účtu a potom do svých FB Pages.manage-pages
  7. Nyní je vše připravené k využívání API.

Publikování příspěvků

Pro psaní na stránku „jako stránka“ potřebujeme zjistit:

  1. ID stránky. To získáme v nastavení stránky v nabídce Page Info úplně dole jako Facebook Page ID.
    id-stranky

  1. App ID a App Secret
    vytvorena-aplikace

Celý proces odeslání příspěvku potom funguje následovně:

  1. V prohlížeči, kde jsme přihlášeni k účtu, který má oprávnění spravovat stránku, spustíme vlastní PHP skript pro odeslání (example.com/odeslat.php).
  2. Tento skript hlavičkou header přesměruje na stránku Facebooku (předá ji ID aplikace a URL sebe sama). V případě, že je člověk přihlášen ke svému profilu, Facebook přesměruje zpátky na určenou adresu a v parametru URL (tzv. query string – QS) pošle kód.
  3. S tímto kódem můžeme získat access token k dané aplikaci.
  4. S access tokenem aplikace následně získáme access token stránky (Page).
  5. S access tokenem stránky konečně můžeme učinit konečný požadavek, kterým publikujeme příspěvek.

Hotový skript na GitHubu (našel jsem ho někde na internetu, šel by napsat lépe, ale funguje)

Odkazy a zdroje

Komentáře

Odebírat
Upozornit na
guest
5 Komentářů
Nejstarší
Nejnovější Most Voted
Inline Feedbacks
Zobrazit všechny komentáře
Tomas Jurman

Ahoj díky za článek. Moc mi pomohl.
Odesílat aktuality z RS přímo na FB jsem měl dlouho v plánu.

Tomas Dvorak

Tahle věta mě trochu děsí:

Hotový skript na GitHubu (našel jsem ho někde na internetu, šel by napsat lépe, ale funguje)

Nešlo alespoň dohledat / odkázat původní zdroj, případně to raději vůbec nezmiňovat? Uloupit script kdesi na internetu a hodit k sobě na github…

Kolemjdouci

Nějak nechápu význam článku.
Nic jsem se z toho nedozvěděl, místo FB API autor rozebírá nastavení FB aplikace a kód je navíc odněkud z internetu.

Roman Pospíšilík

Tohle jsem už jednou také řešil, když jsem na jednu FB stránku potřeboval přes cron pravidelně vkládat jídelní lístek na následující den. Problém byl v tom, že token, který jsem získal, měl krátkou životnost … a tak bylo potřeba složitými cestami vytvořit token, který nemá expiraci.
Nejdříve je potřeba si vygenerovat token s expirací (1 hodina):

https://www.facebook.com?client_id=%5BAPPID%5D&client_secret=%5BAPPSECRET%5D&redirect_uri%5Bhttp://APPURL%5D&scope=manage_pages,read_stream&response_type=token

Pak tento token vložit sem:

https://graph.facebook.com/oauth/access_token?client_id=%5BAPP_ID%5D&client_secret=%5BAPP_SECRET%5D&grant_type=fb_exchange_token&fb_exchange_token=%5BEXISTING_ACCESS_TOKEN%5D

A pak sem:

https://graph.facebook.com/me/accounts?access_token=%5BTOKEN%5D

A zde nám už vypíše token bez expirace. Jeho platnost si můžete pak ověřit zde: https://developers.facebook.com/tools/debug/accesstoken

Shneck

Musim mockrát poděkovat…dost hodin jsem to se svou nedokonalou angličtinou luštil z nápovědy facebooku a až váš komentář to nádherně shrnul česky a jednoduše… Ještě jednou mockrát děkuju

Přístupnost není jen o splnění norem: nový pohled na inkluzivní design

Přístupnost a inkluze možná nepatří mezi nejžhavější témata digitálního světa – dokud o nich nezačne mluvit Vitaly Friedman. Na WebExpo 2024 předvedl, že inkluzivní design není jen o splněných checkboxech, ale hlavně o lidech. S energií sobě vlastní obrátil zažité přístupy naruby a ukázal, že skutečně přístupný web je nejen možný, ale i nezbytný.

Efektivnější vývoj UI nebo API: Co si odnést z WebExpo 2025?

Různé
Komentáře: 0
Jak snadno implementovat moderní uživatelské rozhraní? Které funkce brzdí rychlost vašeho webu? A kdy raději sami přibrzdit, abychom využitím AI nepřekročili etické principy? Debatu aktuálních dev témat rozdmýchá sedmnáctý ročník technologické konference WebExpo, která proběhne v Praze od 28. do 30. května. Který talk či workshop si rozhodně nenechat ujít? Toto je náš redakční výběr z vývojářských hroznů.

Zapřáhněte AI jako nikdy předtím. Květnová konference WebExpo přivítá hvězdy technologického světa

Od 28. do 30. května 2025 promění pražský Palác Lucerna na tři dny technologická konference WebExpo. Na programu je více než 80 přednášek a workshopů od expertů z celého světa. WebExpo tradičně propojuje vývojáře, designéry, marketéry i byznysové lídry a nabízí praktické dovednosti, strategické myšlení a přináší nejnovější trendy nejen v oblasti AI.