Якщо ти ведеш блог або новинний сайт, ручний постинг кожної статті у Facebook швидко перетворюється на рутину. Значно зручніше автоматизувати цей процес: опублікував матеріал на сайті — і він автоматично з’явився на сторінці у Facebook. Саме це і є автопостинг.

У цій статті розберемо, як реалізувати автопостинг статті на Facebook-сторінку за допомогою PHP. Пройдемо шлях від створення застосунку до реального прикладу коду. Якщо ти займаєшся веб-розробкою або створюєш власні проєкти в межах Створення тем WordPress, така автоматизація стане дуже корисною.

Як працює автопостинг у Facebook

Facebook надає доступ до свого API — Graph API. Через нього можна публікувати записи, отримувати дані сторінки та керувати контентом.

Щоб усе запрацювало, тобі потрібно:

  • створити застосунок у Meta for Developers;
  • надати дозволи для публікації на сторінці;
  • отримати токен доступу (access token);
  • надіслати POST-запит через PHP.

Звучить складно, але якщо розкласти по кроках — усе досить логічно.

Крок 1. Створення застосунку

Перейди на сайт для розробників Facebook https://developers.facebook.com/apps і створи новий застосунок (кнопка Create App у правому верхньому куті). Заповни потрібні початкові дані:

В розділі "Use cases" обери зліва вкладку "Content management", і у списку справа постав галочку на пункті "Manage everything on your Page":

На наступному кроці Facebook запропонує тобі підключити бізнес портфоліо – це необов'язковий крок для автопостингу, тому пропускаємо його, обравши "I don't want to connect a business portfolio yet.":

Далі просто погоджумось, натискаючи "Next":

Останнім кроком буде попередній перегляд щойно внесених даних для перевірки – раптом ми щось забули. Якщо все добре – тисни "Go to dashboard":

Крок 2. Дозволи

Далі нам треба додати ще декілька прав для додатка, переходимо у вкладку "Сценарії використання":

В "Use cases" у пункті "Manage everything on your Page", який ми перед тим обрали, тиснемо "Customize":

І потрапляємо на сторінку прав додатка, нам необхідно кнопками "Add" додати два пункти:

А саме page_manage_posts та pages_read_engagement, має вийти ось так:

Крок 3. Отримання токена доступу

Після цього в самому лівому меню переходимо на вкладку "Тестування" та відкриваємо "Open Graph API Explorer":

У тебе відкриється окреме вікно для тестування API, наразі нам потрібна тільки права його частина. Переконайся, що в тебе у випадаючому списку "User or Page" вибрано "Get token", і тисни "Generate Access Token":

Отримавши токен юзера, в адресному рядку вікна (не браузера, а саме "фейсбучного" вікна – уважно) введи значення "me/accounts", підтверди кнопкою "Submit", у результаті, який прийшов нижче, знайди ID своєї сторінки та збережи його, наприклад, у PHP змінну $pageId:

Далі в тому ж випадаючому списку "User or Page" обери пункт "Get Page Access Token", коли з'явиться вікно авторизації – підтверди вхід за допомогою свого акаунта Facebook та обери потрібну сторінку (на яку йтиме автопостинг):

Після цього тиснемо знову той же випадаючий список і бачимо, що в ньому з'явилася наша сторінка, обираємо її:

Токен сторінки переважно генерується автоматично, якщо цього не сталося – натисни кнопку "Generate Access Token", а потім скопіюй його і збережи собі, наприклад, в PHP змінну $pageAccessToken. Це і буде основний токен, який ми вказуватимемо при кожному автопостингу:

Крок 4. Додаткові налаштування додатка

Токен ми згенерували та зберегли, вікно тестування API можна закривати, повертаємося в попередню вкладку, на сторінку "App settings -> Головне". Тут обов'язково потрібно внести посилання на сторінку Політики конфіденційності твого сайту, інакше не зможеш опублікувати додаток. А після цього тиснемо на пункт меню "Публікація":

Якщо ти до цієї миті робив/ла усе правильно, то зможеш опублікувати додаток, інакше в тебе з'явиться список пунктів, які треба виконати перед публікацією.

Крок 5. Приклад автопостингу через PHP

Тепер найцікавіше — сам код. Нижче простий приклад публікації поста з текстом і посиланням:

<?php
$pageAccessToken = 'YOUR_PAGE_ACCESS_TOKEN';
$pageId = 'YOUR_PAGE_ID';
$message = "Нова стаття вже на сайті!";
$link = "https://example.com/new-article";
$data = [
	'message' => $message,
	'link' => $link,
	'access_token' => $pageAccessToken
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://graph.facebook.com/{$pageId}/feed");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>

Цей скрипт надсилає POST-запит до Graph API і створює новий запис на сторінці. Як бачиш, я використовую раніше згадані змінні $pageAccessToken та $pageId.

Як інтегрувати автопостинг у WordPress

Якщо ти працюєш зі Створенням тем WordPress, автопостинг можна прив’язати до моменту публікації статті.

Наприклад, через хук publish_post у functions.php:

add_action('publish_post', 'auto_post_to_facebook');
function auto_post_to_facebook($post_id) {
	// Тут можна отримати заголовок і посилання // та відправити їх через cURL у Facebook 
}

Це дозволяє повністю автоматизувати процес: тиснеш “Опублікувати” — і запис одразу з’являється у Facebook.

Типові помилки

  • Невірний або прострочений токен.
  • Відсутні дозволи для публікації.
  • Спроба постити від імені профілю замість сторінки.
  • Застосунок у режимі розробки без доступу для інших користувачів.

Якщо виникає помилка, завжди перевіряй відповідь API — вона містить код і опис проблеми.

Безпека та практичні поради

Ніколи не зберігай токен доступу прямо у відкритому коді, якщо він доступний ззовні. Краще винести його в конфігураційний файл або змінні середовища.

Також варто реалізувати логування запитів — це допоможе виявити помилки. У серйозних проєктах така автоматизація стає частиною повноцінної системи контент-менеджменту.

Якщо ти розвиваєшся у Front-end розробці, розуміння роботи з API значно розширить твої можливості. Сучасна веб-розробка — це не лише верстка, а й інтеграції із зовнішніми сервісами.

Підсумок

Автопостинг у Facebook через PHP — це реальний і зручний спосіб автоматизувати просування контенту. Потрібно створити застосунок, отримати токен доступу та надіслати POST-запит через Graph API. Після первинного налаштування система працює повністю автоматично.

Один раз усе правильно налаштовуєш — і забуваєш про ручний постинг. А це економія часу та більш системний підхід до розвитку твого проєкту 🚀