Модуль для публикации данных из соцсетей. Drupal 8. Часть 1: Одни расстройства.

Average: 3.5 (20 votes)

Стояла задача публиковать фотографии, видео с instagram, facebook, youtube. Раньше это делал только с использованием виджетов которые дают соц сети. Вставлял код виджета в блок, вы водил в нужное место и забывал.
В этот раз решили изловчиться и получать эти данные через API соц. сетей. 

В процессе поиска и консультаций в скайпе на Питерском канале Drupal были выбрана два модуля:

  1. social_timeline
  2. socialmediafeed

Social Timeline - требует для работы платную библиотечку dpSocialTimeline. Ну кого останаливают такие мелочи? Никого. Изловчились такми образом: скачли модуль под вордпрес, там была эта библиотечка. 

Далее дейтствовали по редми:

1. Создали папку library  в modules/contrib/social_timeline/library. Распаковали туда файлы  dpSocialTimeline. Какие где файлы должны находиться можно подсмотеть в social_timeline.libraries.yml
 

social_timeline:
  version: VERSION
  js:
    library/js/jquery.magnific-popup.min.js: {}
    library/js/jquery.isotope.min.js: {}
    library/js/jquery.dpSocialTimeline.min.js: {}
    js/social_timeline.js: {}
  css:
    theme:
      library/css/magnific-popup.css: {}
      library/css/dpSocialTimeline.css: {}
  dependencies:
    - core/jquery

2. Создали новый facebook application. У меня был старый, его чутка подредактировал.

3. Далее в документации написано "Скопируйте App ID and App Secret в файлы в папке библиотек: facebook_auth/facebook_page.php.

Тут нас ожидает облом, таких папок и файлов само собой не существует, а если мы еще чуток погуглим то поймем  facebook_auth это целая библиотека от фасебука. В общем я ее нашел и распаковал в эту папку.

Заменил там App ID and App Secret.

Опять  же в этом мне помог вордпресс модуль, да прибудет с ним сила. social_timeline-8.x-2.1.tar.gz

В общем двигаем дальше.

4. Включаем модуль, если мы его не включили. Чистим кеш. 
Переходим в Управление -> Структура -> Схема блоков и тычем "Расположить блок"

social_timeline_1.png
В настройках выбрал Facebook. Долго искал что такое page id. Пока на одно форуме увидел, что это конец урла страницы. Галка поставьте, а то без нее не будет работать.

social_timeline_2.png

Нажимаем сохранить переходим на нашу тестовую страницу. И....

И ничего не заработало. Зато в консоле выдает такую ошибку: /modules/contrib/social_timeline/library/facebook_auth/facebook_page.php?page_id=remontecuspb&t=1511456236642&count=5 Failed to load resource: the server responded with a status of 403 (Forbidden).   То есть он не может выполнить скрипт по /modules/contrib/social_timeline/library/facebook_auth/facebook_page.php .
В общем я плюнул, не хватило мне терпения. Может все делалось как то побыстрее и правильнее, но у меня не получилось.

На данном этапе модуль уходит в топку.

Модуль social_timeline хоть и находился в нормальной стабильной версии у меня не завелся.

На эти все иследования по выбору модуля, изучения кода модуля, консультаций с коллегами ушло  у меня полтора дня. 
В общем одни растройства.

Во второй части расскажу про работающий модуль, который на момент публикации был в dev, но он работает!

Поделитесь статьей