getYoutube

Что такое getYoutube?

Cниппет видеопоиска для MODX REVO.

Сниппет использует API сервиса YouTube, для поиска каналов или видео и возвращает связанные с ними данные.

История

getYoutube первое расширение написанное Дэвидом Педе (@davepede) и выпущенный 14 апреля, 2014.

Загрузка

Расширение можно скачать в репозитории MODX REVO с помощью менеджера управления пакетами или из репозитория http://modx.com/extras/package/getYoutube.

Исходники и само расширение также доступено на github: https://github.com/tasianmedia/getYoutube.

Ошибки и пожелания

Ошибки, вопросы и пожелания можно сообщить разработчику в github-репозитории, здесь: https://github.com/tasianmedia/getYoutube/issues.

Использование

[[!getYoutube]]

Системные настройки

Для работы с сервисом Google вам потребуется зарегистрировать приложение, что бы вы могли отправлять запросы к API YouTube. Следуйте этому руководству, чтобы получить API-ключ Google.

Ключ Описание
getyoutube.api_key API-ключ Google приложения

Доступные параметры

Имя Описание По умолчанию
mode Режим поиска (варианты: канал или видео) video
video Разделенный запятыми список числовых идентификаторов видео.
channel Идентификатор канала YouTube для поиска. Вернутся все видео канала.
sortby Сортировка. (варианты: date, rating, title, viewCount) date
limit Ограничение для количества видео. (Примечание: допустимые значения: от 0 до 50 включительно) 50
safeSearch Режим для отсеивания видео, по уровню доступа. (варианты: none, moderate, strict) none
tpl Имя чанка, выступающий в качестве основного шаблона. (Обязательно) videoTpl
tplAlt Имя чанка, выступающий в качестве шаблона для альтернативного видео.
toPlaceholder Если установлен, присваивает вывод результата в этот плейсхолдер вместо вывода напрямую.
totalVar Определяем ключевые плейсхолдеры, установленные для getYoutube. total

Доступные заполнители

Имя Описание
[[+id]] ID видео.
[[+title]] Заголовок видео.
[[+description]] Описание видео.
[[+url]] Ссылка на страницу видео.
[[+publish_date]] Дата публикации.
[[+thumbnail_small]] Ссылка на маленькое изображение видео (120 x 90px).
[[+thumbnail_medium]] Ссылка на среднее изображение видео (120 x 90px).
[[+thumbnail_large]] Ссылка на среднее изображение видео (480 x 360px).
[[+channel_title]] Заголовок канала.
[[+duration]] Продолжительность видео.
[[+viewCount]] Количество просмотров.
[[+likeCount]] Количество лайков.
[[+dislikeCount]] Количество отрицательных лайков.
[[+favoriteCount]] Количество избранных.
[[+commentCount]] Количество комментариев.

Другие заполнители

Имя Описание
[[+total]] Количество видео вернувшихся в результате запроса.
[[+nextPage]] Ссылка на слудующую старницу(подробнее смотрите в документации по пагинации).
[[+prevPage]] Ссылка на предыдущую старницу(подробнее смотрите в документации по пагинации).

Примеры

Выводим все видео с YouTube канала 'Spotlight', используем 'videoTpl' чанк:

[[!getYoutube? &mode=`channel` &channel=`UCBR8-60-B28hp2BmDPdntcQ` &tpl=`videoTpl` ]]

Выводим определенное видео, используя 'videoTpl' чанк:

[[!getYoutube? &mode=`video` &video=`_X-jSkrqYzk,FoRRybrFR0c,yXBPbnv1H-U` &tpl=`videoTpl` ]]

Выводим все видео с YouTube канала 'Spotlight', используем 'videoTpl' чанк и назначаем вывод в плейсхолдер:

[[!getYoutube? &mode=`channel` &channel=`UCBR8-60-B28hp2BmDPdntcQ` &tpl=`videoTpl` &toPlaceholder=`videos`]]
[[+videos:notempty=`[[+videos]]` ]]

Примеры пагинации

Данные из API YouTube возвращаются блоками по 50. Можно использовать встроенные плейсхолдеры пагинации что бы вывести результаты каналов в которых количество видео больше 50.

Выводим все видео с YouTube канала 'Spotlight', используем 'videoTpl' чанк:

[[!getYoutube? &mode=`channel` &channel=`UCBR8-60-B28hp2BmDPdntcQ` &tpl=`videoTpl`]]

[[+prevPage:notempty=`<a href="[[+prevPage]]">prevPage</a>`]]
[[+nextPage:notempty=`<a href="[[+nextPage]]">nextPage</a>`]]
     
Total: [[+total]]

Выводим все видео с YouTube канала 'Spotlight', 10 одновременно, используя 'videoTpl' чанк:

[[!getYoutube? &mode=`channel` &channel=`UCBR8-60-B28hp2BmDPdntcQ` &tpl=`videoTpl` &limit=`10`]]
 
[[+prevPage:notempty=`<a href="[[+prevPage]]">prevPage</a>`]]
[[+nextPage:notempty=`<a href="[[+nextPage]]">nextPage</a>`]]
     
Total: [[+total]]
AdvSearch - является компонентом поиска для…
cookieJar - набор сниппетов для работы с…
getYoutube - сниппет видеопоиска для MODX…
aliasid - полученаем id ресурса по алиасу…
AddHeaderfiles - полученаем id ресурса по алиасу…
AjaxUpload - сниппет для асинхронной загрузки…
amazonSES mailing list - рассылка с помощью сервиса Amazon…
Analytics - Google аналитика для MODX REVO.
Archivist - создаем навигацию в стиле Wordpress.…
Articles - добавляем пользовательский тип…