Cotonti / Open Source PHP Content Management FrameworkContent Management Framework

Forumlar / National / Russian / Модули и плагины / Вставка видео

<<<12

Замена устаревшего метода вставки видео с видехостингов

Stalker
#16 2013-03-11 19:53

Код для вставки видео с Youtube в маркитапе такой же, как и на старом варианте?

Добавлено 21 часа спустя:

Нет, всё равно лажа получается. Ролики вставлляются в страницы, но не работают в комментариях. Не работают на форуме. Уважаемая техподдержка, неужели эта проблема у всех решена и никому не интересна?


Bu konu Stalker tarafından düzenlendi(2013-03-12 16:59, 9 yıllar önce)
Macik
#17 2013-03-13 09:29

Тут еще такой нюанс: в разных частях сайта (страницы, комментарии, форум) - могут работать разные правила для плагина HTMLPurifier (который занимается вычищением ошибок разметки и недопустимых для данного пользователя тегов).

Настройки храняться «plugins\htmlpurifier\presets\*.php» файлах. И используются в зависимости от группы пользователя (админ, пользователь, все остальные - гости). 

Думаю дело в этом. В дополнение ко всему - в предыдущих версиях, кроме последней 9.13 (еще официально не выложена - можно качасть с ГитХаба), в коде HTMLPurifier была ошибка с некоректной обработкой Iframe тегов. 

(зы: То, что это не прописано доходчево в документации, и пользователи который раз спрашивают об одном и том же - это упущение. )

Добавлено 37 минуты спустя:

В дополнение:  

еще в зависимости от настроек для разных частей сайта  (страницы, комментарии, форум) можнт использоваться различные парсеры (html, bbcode, … ), и для каждого из парсеров различные редакторы. От этого в конечном счете тоже зависит какой код будет сформирован для того, или иного элемента (картинка, вставка видео и проч.).

Добавлено 6 минуты спустя:

Еще чуть не забыл - поведение HTMLPurifier еще зависит от настройки «Уровень Tidy:» (в конфигурации плагина). Это на прямую не должно влиять на ставку видео, но может коснуться его в случае если код-обертка видео имеет какие либо ошибки в своей разметке (которые с точки зрения HTMLPurifier надо исправить).

Добавлено 7 минуты спустя:

Ну да и еще, в зависимости от части сайта  - настройки редактора, набор доступных для использования кнопок (инструментов) тоже могут меняться. Как пример см. CKeditor, где для редактирования страниц используется вся линейка инструментов, а для коментариев только ограниченный набор. 

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F

Bu konu Macik tarafından düzenlendi(2013-03-13 10:18, 9 yıllar önce)
Stalker
#18 2013-03-14 13:49

Сложно заморочено. Но по крайней мере понятно - в какую сторону копать, спасибо вам.

Macik
#19 2013-03-15 13:53

На самом деле не так сложно и сумбурно как я написал- попробую более структурированно. 

Получается что-то типа слоеного пирога (в квадратных скобках указал те этапы которые могут не использоваться в цепочке в зависимости от настроек): 

  • Основа - это то, какой парсер выбран для сайта в целом и его частей, т.к. для некоторых разделов (например для страниц) его можно независимо изменить →
  • в зависимости от парсера будет использован тот или иной редактор, привязанный в настройках к этому парсеру (см.настройки соотв. парсера HTML или BBCODE) →
  • [редактор в зависимости от раздела сайта может грузить разный набор плагинов-инструментов и «давать доступ» на вставку кода видео или нет] →
  • от редактора зависит какой код будет сформирован для вставки объекта (например для видео это может быть «object» или «iframe») →
  • после добавления страницы/комментария данные обрабатываются соответствующим парсером (см. выще HTML или BBCODE) →
  • [парсер Html использует HtmlPurifier, который в зависимости от прав пользователя может «отрезать» недопустимые с его точки зрения элементы (теги)] →
  • [опять же HtmlPurifier (см.уровеньTidy) пытается поправить «битую» html разметку, и если таковая создается (по каким либо причинам) редактором, то тоже может «исправить или отрезать».

На базе это и получается финальный результат.

 

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
Eugene
#20 2013-03-15 22:04

очень классное объяснение!

заменяет чтение нескольких доков ))

спасибо

Stalker
#21 2013-03-20 18:34

Пурифер отключил. Не разобрался я пока с ним. Оставил СКeditor и парсинг bbcode

 


Bu konu Stalker tarafından düzenlendi(2013-04-10 21:47, 9 yıllar önce)
Виктор
#22 2015-09-20 09:30

А как сделать чтоб можно добавлять видео с ютуба с помощю екстраполя?

Roffun
#23 2015-09-20 21:32

Установите плагин fancyboxes и сможете видео с ютуба вызывать без экстраполя:

Для вызова видео с youtube добавить класс fancybox-media к ссылке:

1
<a class="fancybox-media" href="https://youtu.be/ваше видео">media</a>

Также можно с помощью плагина вызывать форму авторизации, флеш игры и тд . 

p.s. Нажмите на регистрацию или авторизацию на указанном ресурсе, выведено через плагин.

Для вывода формы авторизации через плагин:

<a rel="nofollow" class="fancybox fancybox.ajax" href="{PHP|cot_url('login')}">{PHP.L.Login}</a>

А чтобы с помощью экстраполя заполнять ссылку на видео, то просто создайте поле инпут, и вместо href атрибута вставьте:

<a class="fancybox-media" href="https://youtu.be/{ЭКСТРАПОЛЕ ССЫЛКА НА ВИДЕО без https://youtu.be/}">
{ЭКСТРАПОЛЕ НАЗВАНИЕ ВИДЕО}
</a>

 

Улетел на другую планету, а там почты нету.. https://www.cotonti.com/forums/45298?m=posts

Bu konu Roffun tarafından düzenlendi(2016-06-29 13:41, 6 yıllar önce)
Виктор
#24 2015-09-23 14:09

Сделал так

<object width="420" height="315">
<param name="movie" value="http://www.youtube.com/v/{ЭКСТРАПОЛЕ ССЫЛКА НА ВИДЕО}?version=3&amp;hl=ru_RU&amp;rel=0">
<param name="allowFullScreen" value="true">
<param name="allowscriptaccess" value="always">
<param name="wmode" value="opaque">
<embed src="http://www.youtube.com/v/{ЭКСТРАПОЛЕ ССЫЛКА НА ВИДЕО}?version=3&amp;hl=ru_RU&amp;rel=0" wmode="opaque" type="application/x-shockwave-flash" width="420" height="315" allowscriptaccess="always" allowfullscreen="true">
</object>

 

Dayver
#25 2015-09-23 23:09
#41034 Виктор:

Сделал так

Я бы порекомендовал еще обернуть все это проверочкой:

<!-- IF {ЭКСТРАПОЛЕ ССЫЛКА НА ВИДЕО} -->
....
<!-- ENDIF -->

Дабы если в поле ничего нет то небыло лишнего кода на странице ... естественно это только на случай если указанное экстраполе не является обяьзательным к заполнению (можно такую опцию в настрояках поля задать).

Pavel Tkachenko aka Dayver. Гик и веб мастер который делает сайты, увлекается электроникой и очень любит смотреть кино.
О себе: Я злой и страшный серый волк, я в поросятах знааааюююю толк
Виктор
#26 2015-09-25 05:47
#41035 Dayver:
#41034 Виктор:

Сделал так

Я бы порекомендовал еще обернуть все это проверочкой:

<!-- IF {ЭКСТРАПОЛЕ ССЫЛКА НА ВИДЕО} -->
....
<!-- ENDIF -->

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

Спасибо, очень полезная рекомендация, учту при верстке.

efimov.studio
#27 2016-11-30 08:53

Еще попроще вариант, вставка ютуб видео через iframe (Понадобится тем, кто не хочет нарушать общий стиль сайта и настроит под него вывод видео по размеру)

<!-- IF {ЭКСТРАПОЛЕ С КОДОМ ВИДЕО} -->
<iframe width="560" height="315" src="https://www.youtube.com/embed/{ЭКСТРАПОЛЕ С КОДОМ ВИДЕО}" frameborder="0" allowfullscreen></iframe>
<!-- ENDIF -->

Kopusha
#28 2018-02-26 06:52
#37228 Macik:

На самом деле не так сложно и сумбурно как я написал- попробую более структурированно.

Спрошу тут. Заметил что перестал работать оембед как раньше. До этого работал, полностью поменян шаблон, жейквери стал новый. Возможно в пьюрифайре что то делалось. Откатится проверить не могу. 

На сайте как был скэдитор так и есть, хтмл. Пьюрифаер отключаю не помогает.

Теперь только вторая ссылка в обрамлении преобразовывается
 

1 - https://www.youtube.com/watch?v=IqkOi2AdjLw 
2 - Lorem ipsum dolor [embed]https://www.youtube.com/watch?v=vx50HspXtWA[/embed] sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore  magna  aliqua.

Те ссылки что без обрамления сейчас преобразованы, но при редактировании записи превращаются в текст. 

От чего кроме редактора и пьюрифайра может зависеть оембед? Доктайпы какие-то? Блин голову сломал. 

Да - речь о плагине для Сиены от Херора.

Added 4 hours later:

ПС пьюрифайр актуальный, с ХТМЛ5 - но он был такой и когда нормально оембед отрабатывал, и с выключенным пьюрифайром не преобразовывает(


Bu konu Kopusha tarafından düzenlendi(2018-02-26 11:22, 4 yıllar önce)
Macik
#29 2018-03-28 15:23

Опишите, какое поведение было до этого для простых ссылок в тексте?

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F
Kopusha
#30 2018-03-29 11:01

Раньше писал как вариант 1 из сообщения выше и эту ссылку превращало в нужный объект - ифрейм и тд в зависимости от сайта донора. Сейчас при использовании [embed] делает точно так же как и надо, а простая ссылка - просто текст.

<<<12