YouTube блокируют, на сайте Drupal ролики не открываются. Есть смысл перенести видео в RuTube. Но вот беда, после взлома RuTube в 2022 году весь embed функционал RuTube перестал работать. Я писал в поддержку RuTube, мне сказали что такого функционала у них теперь нет. Когда этот функционал вернётся и вернётся ли — не дали информацию.
Шли годы, и вот, embed функционал вернулся. Следовательно, встраиваем возможность вставки роликов в RuTube в Drupal 9 (10, 11).
Начиная с Drupal 8.6 на уровне ядра появилась возможность работать с медиаданными, в ядро встроен модуль Media. Ещё один модуль-помощник называется Media Library.
В Drupal 8.6 несколько типов медиа создаются автоматически при включении модуля Media:
- File
- Image
- Audio file (local)
- Video file (local)
- Remote video
Drupal 8 — создаем Media Type: Remote video
В типе Remote video имеется встроенная поддержка видео с YouTube и Vimeo. Как мы уже догадались, RuTube там нет. И других провайдеров тоже нет. Будем добавлять.
На помощь нам приходит модуль oEmbed Providers. Установим его. Для Drupal 10 и 11 подойдёт версия 2.2:
composer require 'drupal/oembed_providers:^2.2'Для Drupal 9 — 2.1:
composer require 'drupal/oembed_providers:^2.1'
Модуль поддерживает большое количество провайдеров:
https://oembed.com/providers.json
Custom Providers
И RuTube там нет, но можно добавить вручную. /admin/config/media/oembed-providers/custom-providers +Add oEmbed provider.
- Provider name: rutube
- Provider URL: https://rutube.ru
- Endpoint:
- Endpoint schemes: https://rutube.ru/video/*/
- Endpoint URL: https://rutube.ru/api/oembed/
- Discovery: True
- JSON: True

ВНИМАНИЕ: имя провайдера (provider name) написано с маленькой буквы.
Provider Buckets
/admin/config/media/oembed-providers/buckets
Добавляем корзину провайдеров. +Add provider bucket. Назовём RuTube Provider.

Там их много, можно выбрать нужные, пока добавляем только один, ставим галку на rutube.
Добавляем тип медиа
/admin/structure/media/add
- Название: RuTube video
- Описание: RuTube
- Источник медиа: RuTube Provider

- Thumbnails location: public://oembed_thumbnails/[date:custom:Y-m]
- Allowed providers: rutube

Дальше всё по умолчанию. Можете что-то ещё донастроить, но уже потом, когда заработает.
Теперь в медиа вы можете создавать новые элементы типа "Rutube Video".

Попробуем закинуть ссылку на ролик с RuTube.

Работает.
