З 24 жовтня 2020 року Facebook припиняє підтримку неавтентифікованих вбудовувань WordPress. Таким чином, якщо ви вбудовуєте контент Facebook та Instagram на свій сайт WordPress, він не відображатиметься.
Старі кінцеві точки Facebook oEmbed замінюються на нові, які вимагають аутентифікації через Facebook. Оскільки Facebook володіє Instagram, самі вимоги застосовуються і до кінцевих точок Instagram oEmbed.
Зі статті ви дізнаєтеся, як WordPress використовує кінцеві точки oEmbed Facebook і Instagram, що оновлюється і як можна щось виправити, щоб ваші вбудовування продовжували працювати належним чином.
Як WordPress використовує oEmbed для вбудовування контенту
oEmbed – це протокол, яким сайти вбудовують контент з інших сторонніх сайтів за допомогою лише URL-адреси. Він розроблений насамперед для того, щоб уникнути необхідності копіювати та вставляти HTML з інших сайтів. WordPress використовує oEmbed для відображення вбудованого контенту, такого як фотографії та відео.Все, що вам потрібно зробити, це розмістити URL-адресу ресурсу в області вмісту, і WordPress автоматично перетворить його на вбудовування та покаже його попередній перегляд у реальному часі.
У наведеному вище прикладі вставлено посилання на відео YouTube, і WordPress автоматично перетворив її на вбудоване відео. Протокол oEmbed є основою WordPress для вбудовування багатьох типів контенту, таких як відео, зображення, оновлення та багато іншого з різних платформ соціальних мереж.
Хоча WordPress дозволяє вбудовувати очищені кадри від будь-якого зареєстрованого постачальника oEmbed, він не вбудовує їх за умовчанням з міркувань безпеки. За умовчанням він вбудовує лише URL-адреси певних санкціонованих провайдерів oEmbed.
перелік надійних постачальників oEmbed WordPress включає більшість популярних хостингових сайтів і соціальних мереж, таких як Imgur, Facebook, Instagram, Tumblr, YouTube, Vimeo та інші. Від цих постачальників можна вбудовувати будь-який контент: відео, кадри, JavaScript та навіть випадковий HTML.
Вбудовані кінцеві точки Facebook та Instagram (застарілі)
Кінцеві точки Facebook та Instagram oEmbed є основою для вбудовування контенту Facebook та Instagram у сайти WordPress.
Кінцеві точки Facebook oEmbed дозволяють WordPress отримувати не тільки основний контент, але й метадані, такі як ім'я та логотип сторінки, дату та час, мініатюру, кількість лайків, коментарів та репостів, а також URL-адресу джерела.
Те саме стосується вбудовування контенту з Instagram. Ви можете бачити у вбудовуванні не тільки зображення, але й важливу інформацію про метадані, пов'язану з ним.
Нові кінцеві точки Facebook та Instagram «oEmbed»
Facebook нещодавно оголосив про припинення підтримки існуючих кінцевих точок oEmbed, починаючи з 24 жовтня 2020 року. Тепер вони називають ці старі кінцеві точки застарілими кінцевими точками oEmbed.
До 24 жовтня 2020 року розробники повинні використовувати токен користувача, програми або клієнта при запиті Graph API зображень профілю користувача через UID, FB OEmbeds та IG OEmbeds. Розробники повинні надати токен користувача або програми при запиті зображень профілю через UID або ASID, хоча клієнтські токени також підтримуються. Відвідайте наш журнал змін для User Picture, Facebook OEmbed и Instagram OEmліжко, щоб дізнатися, як викликати ці кінцеві точки Graph API.
- Facebook для розробників
Що потрібно зробити, щоб скористатися перевагами Facebook oEmbed API
Ідучи проти відкритого характеру веб API oEmbed, новий Facebook oEmbed API має різні вимоги:
- У вас має бути обліковий запис Facebook для розробника.
- Необхідно мати зареєстровану програму Facebook для створення унікального ідентифікатора програми.
- Потрібно увімкнути продукт oEmbed для зареєстрованої програми.
- Ви повинні створити токен доступу до програми або токен клієнтського доступу.
- Нарешті, ви повинні встановити програму Facebook у режим реального часу.
У відповідь на ці нові вимоги WordPress видаляє Facebook та Instagram як надійні джерела oEmbed.
Ми очікуємо, що наступне велике оновлення WordPress включатиме ці зміни. Якщо ви використовуєте плагін Gutenberg, остання версія Gutenberg 9.0 вже видалила їм підтримку.
Що відбувається зі старими вбудованими файлами Facebook та Instagram?
WordPress кешує відповіді oEmbed у своїй базі даних під типом post meta
або прихованим oembed_cache
типом записів (нині використовується лише у віджетах).
Оскільки WordPress не очищає ці значення за промовчанням, вміст вкладень, як і раніше, існуватиме на вашому веб-сайті.
Але їх буде видалено, якщо ви видалите їх вручну з бази даних. Таким чином, будь-які файли Facebook або Instagram, які ви додали до крайнього терміну 24 жовтня 2020 року, збережуться навіть після дати припинення підтримки.
Як вбудовувати контент Facebook та Instagram після 24 жовтня
Якщо ви спробуєте впровадити контент Facebook або Instagram після того, як кінцеві точки oEmbed застаріли, ви і ваші користувачі отримаєте у відповідь помилки HTTP 400.
Щоб допомогти нам перевірити, як нові спроби впровадження будуть відображатися після останнього терміну, Facebook додав параметр для застарілих кінцевих точок oEmbed для імітації помилки.
Резервні вставки Facebook відображатимуться у вигляді невеликих уривків (не більше 120 символів) усередині цитат. Він також міститиме посилання на автора і першоджерело, але не більше того.
Для порівняння, резервні вбудовування Instagram набагато кращі, оскільки структура вбудовування практично не пошкоджена.
З урахуванням сказаного це тимчасова проблема. Як тільки WordPress видалить кінцеві точки oEmbed Facebook та Instagram зі свого ядра, застарілі кінцеві точки oEmbed перестануть бути проблемою.
Єдиний спосіб вбудовувати контент Facebook та Instagram – це відповідати вимогам Facebook. Як саме це зробити, читайте у наступному розділі.
Дивіться також:
Які розміри рекламних банерів Google, Facebook та Instagram.
Як виправити помилку oEmbed Facebook і Instagram в WordPress
Найпростіший спосіб відновити вбудовані Facebook та Instagram у WordPress – використовувати безкоштовний плагін oEmbed Plus від Ayesh Karunaratne. Цей плагін реалізує нові API-інтерфейси Facebook та Instagram oEmbed, відновлюючи вбудовані Facebook та Instagram у редакторі блоків.
Примітка: oEmbed Plus вимагає для роботи PHP 7.3 або пізніших версій.
Потім створіть обліковий запис Facebook для розробниківякщо у вас її ще немає, і додаток. Для прикладу назвемо програму WordPress Site, але можете називати її як завгодно.
Створення програми автоматично згенерує для нього ідентифікатор програми.
Ви можете переглядати ваш App ID та App Secret, перейшовши в Налаштування → Базова панель під вашим додатком. Запишіть ці два значення, оскільки вони знадобляться вам пізніше.
Поки ви тут, установіть URL Privacy Policy, як це потрібно. Рекомендується використовувати належну політику конфіденційності, щоб ваша програма не потрапила до чорного списку.
OEmbed Product автоматично вмикається за замовчуванням, так що ви можете залишити його як є.
Потім перейдіть на екран Налаштування → Запис на панелі інструментів WordPress та знайдіть розділ Налаштування вбудовування у Facebook та Instagram. Введіть значення App ID та App Secret, які ви записали раніше.
Крім того, ви можете додати App ID та App Secret до свого wp-config.php
файл. Ось фрагмент коду, який вам потрібно використати:
define('OEMBED_PLUS_FACEBOOK_APP_ID', '7168...app.id...789'); define('OEMBED_PLUS_FACEBOOK_SECRET', '20e5...app.secret...890xyz');
Не забудьте змінити значення, вказані вище на свої! Після цього збережіть файл.
Якщо ви відредагуєте wp-config.php
файл для налаштування oEmbed Plus, він автоматично відключить поля форми App ID та App Secret на вашій панелі керування WordPress. Таким чином, ви можете зберігати свої облікові дані в таємниці від інших користувачів.
Всі нові вбудовані Facebook і Instagram тепер використовуватимуть новий API аутентифікації для вбудовування контенту на ваш сайт WordPress.
Інші спеціалізовані плагіни для соціальних мереж, такі як Feed Instagram и Social Post Feed, також додають підтримку нових кінцевих точок Facebook oEmbed. Однак ці плагіни постачаються в комплекті з безліччю функцій, тому вони можуть бути непотрібним вантажем для вашого сайту в цьому конкретному випадку. Якщо ви вже використовуєте ці плагіни, можете їх перевірити.
WordPress – найпопулярніша CMS, яка використовується сьогодні. Так само Facebook і Instagram є найпопулярнішими платформами соціальних мереж. Отже, ця зміна потенційно торкнеться мільйонів сайтів.
Вбудовування контенту соціальних мереж WordPress пропонує відвідувачам вашого сайту унікальну взаємодію. Починаючи з 24 жовтня 2020 року багатьом необізнаним користувачам буде складно вбудовувати контент із Facebook та Instagram. Сподіваємося, що ця стаття допомогла вам вирішити проблему з oEmbed Facebook у WordPress.
Джерело: kinsta.com
Коментарі до запису: 0