Вывод видео блока, используя форматтер модуля media_youtube

Ситуация, когда вы используете поле типа «Multimedia asset», создаваемое модулями media + media_youtube, и сохранили там ссылку на какое то видео с Youtube хостинга. Как теперь программно отформатировать вывод этого поля в виде блока видео или блока картинки?

Как хранится информация о youtube видео?

Информация сохраняется в таблице file_managed, но, естественно, само видео не выкачивается в файловую систему вашего сайта.

Протокол в поле uri и filemime позволяют программе однозначно определить источник данных. Также в uri мы видим id ролика. В принципе, можно и самостоятельно собрать виджет для показа ролика с ютуба, обладая этими данными.

Но мы воспользуемся готовыми форматтерами модуля media_youtube.

Вывод в формате видео-ролика

Процесс не сложный, требуется подключить файл с форматтерами и вызвать правильно функцию.

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

Эти параметры коррелируют с доками IFrame Player API от Гугл:

  • ‘width’ — ширина ролика, задаётся как в виде процентов — «50%», так и  в виде числа точек -«320».
  • ‘height’ — высота ролика
  • ‘autohide’ — Управляет отображением элементов управления роликом во время воспроизведения. Может принимать три значения:
    • По умолчанию (autohide=2) индикатор воспроизведения видео постепенно исчезает, а элементы управления (воспроизведение, регулировка громкости и т. д.) остаются видимыми.
    • autohide=1 : индикатор воспроизведения видео и элементы управления скрываются после начала воспроизведения видео. Они появляются, только если пользователь наводит курсор на проигрыватель или нажимает клавишу на клавиатуре.
    • autohide=0 : индикатор воспроизведения видео и элементы управления будут видны на протяжении воспроизведения всего видео и в полноэкранном режиме.
  • ‘autoplay’ — хотите автоматически начать проигрывать ролик? — для этого используйте значение «1».
  • ‘color’ — цвет проигрывателя, которым выделяется просмотренная часть видео на индикаторе воспроизведения. Допустимые значения: red и white. По умолчанию используется красный цвет.
  • ‘enablejsapi’ — разрешить использование API на javascript
  • ‘loop’ — проигрывать в цикле
  • ‘modestbranding’ — позволяет убрать логотип YouTube в нижней панели, для этого используйте значение «1», и логотип в нижней панели будет скрыт.
  • ‘nocookie’
  • ‘origin’- параметр обеспечивает некороторые меры безопасности для IFrame API и поддерживается только при встраивании как IFrame. Если вы устанавливаете для параметра enablejsapi значение «1», тогда обязательно укажите свой домен как значение параметра origin. (origin=»https://ВашДомен.зона«)
  • ‘showinfo’ — значения 0/1. При значении «0» проигрыватель перед началом воспроизведения не выводит информацию о видео, его название и кто автор видео. Если вы устанавливаете значение 1, после загрузки плейлиста в проигрывателе отображаются значки всех видео в списке. Эта функция поддерживается только в проигрывателе AS3, который позволяет загружать плейлисты.

А эти распознаются плагином, но не понятно за что отвечают :), можете поэкспериментировать.

  • ‘protocol’
  • ‘protocol_specify’
  • ‘rel’
  • ‘theme’
  • ‘captions’

Вывод в формате изображения

Видосы можно выводить в виде картинки (берется thumbnail с youtube, который кешируется на сервере среди медиа-файлов сайта). Для вывода используется другой форматтер, но процесс аналогичен выводу видео, отличаются лишь настройки display.

Изображение — это более простой объект, потому набор параметров display скромнее:

  • ‘label’ — метка поля
  • ‘settings’
    • ‘image_style’ — имя медиа-стиля картинки

Мало букафф? Читайте есчо !

Rutube: интегрируем как oembed provider source в Drupal

Февраль 28, 2025 г.

Задача - добавить rutube как oembed провайдера в медиа библиотеку, чтобы можно было создать медиа тип Rutube, где будет поле для ввода ссылки. Медиа поля ...

Читать

Drupal 9 за БН amazon cloudfront

Октябрь 12, 2021 г.

Типичная проблема сайта, когда тот оказывается за балансировщиком нагрузки (load balancer), это несоответствие части заголовков запроса клиента и тех заголовков, которые передаются балансировщиком серверу. Чаще всего мы сталкиваемся с этим при запуске ...

Читать

Сохранение файла, полученного через форму в Drupal

Февраль 17, 2024 г.

Вы создали форму с полем типа file, и хотите сохранять файл как сущность друпала при отправке данных формы. [crayon-6990bde9d0400012375387/] Обычно объявления форм в Drupal 8+ размещаются в виде расширений класса FormBase в каталоге модуля /scr/Form/*. ...

Читать

Error Code 1366 of Mysql при записи переводов в базу tmgmt_deepl

Октябрь 4, 2024 г.

Типично ошибка 1366 связана с тем, что кто то пытается записать символы с кодами не соответствующими кодовой таблице символов, установленной для таблицы в базе данных. Но в нашем случае речь идет о иной проблеме. Drupal использует utf8mb4 для текстовых ...

Читать
 

Комментарии к «Вывод видео блока, используя форматтер модуля media_youtube»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: