Video
Общее
Редактируемый элемент Video является мощным инструментом для внедрения видео в контент. Возможные источники видео включают локальные ассеты, а также платформы, такие как YouTube, Vimeo и Dailymotion. При использовании локальных видеофайлов возможно автоматическое создание видео миниатюр и их транскодирование.
Конфигурация
| Имя | Тип | Описание |
|---|---|---|
allowedTypes | array | Вы можете ограничить доступные типы для этого редактируемого элемента, явно указывая допустимые типы. Если эта опция не используется, будут доступны все типы. |
attributes | array | Дополнительные атрибуты для генерируемого тега <video> - только для типа asset. |
editmodeImagePreview | bool | (по умолчанию: false) Установите значение true, чтобы отображать только изображение, а не плеер видео в режиме редактирования. Это может быть необходимо, если у вас много видео на одной странице (для повышения производительности). |
height | integer/string | (по умолчанию: 300) Высота видео в пикселях или процентах. |
imagethumbnail | string | Имя изображения-миниатюры. Эта конфигурация миниатюры используется для генерации превью (постерного изображения). Если не указано, Pimcore попытается получить информацию из миниатюры видео. |
removeAttributes | array | Вы можете удалить стандартные атрибуты, используя эту конфигурацию, например, "removeAttributes" => ["controls","poster"] |
thumbnail | string | Имя миниатюры видео (обязательно при использовании автоматического транскодирования). См.: Video Thumbnails |
width | integer/string | (по умолчанию: "100%") Ширина видео в пикселях или процентах. |
youtube | array | Параметры для интеграции с YouTube. Возможные параметры: https://developers.google.com/youtube/player_parameters — только для типа youtube |
class | string | CSS класс, который добавляется к окружающему контейнеру этого элемента в режиме редактирования |
required | boolean | (по умолчанию: false): Установите значение true, чтобы сделать это поле обязательным для публикации |
Методы
| Имя | Аргументы | Возвращает | Описание |
|---|---|---|---|
getImageThumbnail($name) | (string/array) $name | string, абсолютный путь к миниатюре | Получает конкретную миниатюру изображения видео или миниатюру постерного изображения (если назначено) |
getPosterAsset() | Pimcore\Model\Asset | Возвращает назначенный ассет постера изображения | |
getThumbnail() | (string/array) $name | array, абсолютные пути к различным миниатюрам видео | Получает конкретную миниатюру видео. |
getVideoAsset() | - | asset | Возвращает объект ассета видео, если он назначен, иначе null |
getVideoType() | - | string, тип видео (asset, youtube, vimeo, url) | Определяет тип видео. |
getTitle() | - | string | Название видео |
getDescription() | - | string | Описание видео |
getData() | - | array | Все доступные данные по этому редактируемому элементу |
isEmpty() | - | bool | Проверяет, пуст ли редактируемый элемент |
Данные, возвращаемые методом getPosterAsset:
[status] => finished
[formats] => Array
(
[mp4] => /var/tmp/video_3414__example.mp4
)
Примеры
Основное использование - локальный ассет
Чтобы создать контейнер для локальных видеофайлов, вы можете просто воспользоваться помощником $this->video без каких-либо опций.
<section id="campaign_video">
{{ pimcore_video("campaignVideo", {
width: 700,
height: 400
}) }}
</section>
В режиме редактирования теперь доступен контейнер, в котором вы можете назначить путь к ресурсу и видеопостер.

YouTube, Vimeo & Dailymotion
Вы также можете использовать видео с внешних сервисов (на данный момент это YouTube, Vimeo и Dailymotion), но с ограниченными функциональными возможностями.
В диалоговом окне редактирования видео измените тип на youtube и введите в поле ID идентификатор видео или URL-адрес видео.
(в этом случае вы можете легко найти его в URL-адресе). Также поддерживаются плейлисты Youtube - вы можете идентифицировать их по префиксу PL в ID.

Взгляните на предварительный просмотр во фронтенде:

В конфигурации вы также можете указать дополнительные параметры для внешних служб.
<section id="campaign_video">
{{ pimcore_video("campaignVideo", {
width: 700,
height: 400,
youtube: {
autoplay: true,
modestbranding: true
},
vimeo: {
autoplay: true,
loop: true
}
})
}}
</section>
Можно ограничить количество доступных типов для редактирования. Выбор может быть ограничен с помощью параметра "allowedTypes".
<section id="campaign_video">
{{ pimcore_video("campaignVideo", {
allowedTypes: ["asset", "youtube"]
})
}}
</section>
HTML5 с автоматическим перекодированием видео (с использованием video.js)
<!DOCTYPE HTML>
<html>
<head>
<link href="http://vjs.zencdn.net/5.4.4/video-js.css" rel="stylesheet">
</head>
<body>
{{ pimcore_video("myVideo", {
thumbnail: "example",
width: 400,
height: 300,
attributes: {
"class": "video-js custom-class",
"preload": "auto",
"controls": "",
"data-custom-attr": "my-test"
}
})
}}
<script src="http://vjs.zencdn.net/5.4.4/video.js"></script>
</body>
</html>
Узнайте больше о миниатюрах видео.
Вы можете предложить улучшение документации или задать вопрос в комментариях.
Если вам нужна полноценная консультация — вы можете заказать её на нашем сайте.