Поле видео и аудио

+8
645
Поле видео и аудио

Поле на основе поля файл, до этого у меня в постах был хак из этого поля, но как мне недавно сказали что это не камильфо, поэтому теперь в виде поля и как выяснилось в том хаке были недочеты, но я их не видел тк не пользовал по несколько полей   

Поле позволяет загружать аудио и видео, подключен плеер Plyr

расширения mp4 и mp3, в зависимости от того какое указали выводится нужный плеер

возможно не без косяков 

Изображение

Изображение

Прикреплённый файл:
Скачать 109 Кбскачан 34 раза
0
Александр Александр 2 месяца назад #

Неплохо, вроде все работает, но в конечном итоге на странице вывода видеоролика выдало ошибку:

Неустранимая ошибка: необнаруженная ошибка: вызов неопределенного метода cmsTemplate::addTplCSSName() в /var/www/www-root/data/www/site.ru/system/fields/videoaudio.php:72 Трассировки стека: #0 /var/www/www-root/data/www/site.ru/system/controllers/content/actions/item_view.php(181): fieldVideoaudio->parse('---\nid: 2\ имя:...') # 1 /var/www/www-root/data/www/site.ru/system/core/controller.php(514): actionContentItemView->run() #2 /var/www/www-root/data/www/site.ru/system/core/controller.php(425): cmsController->runExternalAction('item_view', Array) #3 /var/www/www-root/data/www/site.ru/system/controllers/content/frontend.php(22): cmsController->runAction('item_view') #4 /var/www/www-root/data/www/site.ru/system/core/controller.php(450): content->route('news/10-dst-med...') #5 /var/www/www-root/data/www/site.ru/system/core/core.php(736): cmsController->runAction('news', Array) #6 /var/www/www-root/data/www/site.ru/index.php(44): cmsCore->runController() #7 {основной} брошенный в /var/www/www-root/data/www/site.ru/system/fields/videoaudio.php в строке 72 

Версия инстанта 2.12

0
Kuper Kuper 2 месяца назад #

Тестировал на версии 2.16.2 с обновлением до 2.16.3

в вашем случае возможно нужно убрать в \system\fields\videoaudio.php

  1. if (!self::$templated) {
  2. $template->addTplCSSName('plyr');
  3. $template->addTplJSName('plyr');
  4.  
  5. }

и подключить js напрямую в шаблоне main.tpl и css  так же

 по пути 'js/ или css

  1. <link rel="stylesheet" href="<?php echo $this->getTemplateFilePath('js/dist/plyr.css'); ?>" />
  2. <script src="<?php echo $this->getTemplateFilePath('js/dist/plyr.js'); ?>" crossorigin="anonymous"></script>

Изображение

0
Александр Александр 2 месяца назад #

Спасибо за ответ. Да что-то я сам не досмотрел, подключил не заработало, подключил напрямую:

  1. <link rel="stylesheet" href="/templates/default/js/dist/plyr.css" />
  2. <script src="/templates/default/js/dist/plyr.js"></script>

все ок.

Единственное в посте все равно видеоролик так и не появился, хотя понятно поле в типах сделал

0
Kuper Kuper 2 месяца назад #

установил 2.12 

подшаманил, заработало 

demo.cms-php.ru/articles/12-demo.html

установочный пакет под 2.12 main.tpl сразу в архиве и ЗАМЕНЯЕТ оригинал

kuper-spb.ru/index.php/s/n7RefMW9dE75CCJ

А собственно нескромный вопрос почему не обновитесь?

  1. <?php $this->addMainTplCSSName('plyr'); ?>
  2. <?php $this->addMainTplJSName('plyr'); ?>

сответственно в папки js и css

Изображение

0
Александр Александр 2 месяца назад #

А собственно нескромный вопрос почему не обновитесь?

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

+2
Kuper Kuper 2 месяца назад #

Еще немного поглумился над полем аудио, вытащил тэги из файлов, теперь два трека вместе не запустятся, получилось примерно так

demo.cms-php.ru/articles/11-demo-audio.html

Изображение

Еще от автора

Заголовок для ссылки из названия поля и ссылка в виде кнопки
Небольшой хак для того что бы не писать каждый раз заголовок для ссылок если он каждый раз одинаковый и оформление ссылок в виде кнопки
Загрузка видео на сайт
Загрузка видео через поле файл + плеер Plyr
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.