Компонент videoGallery. Fenom выдает «Видео нет».

Здравствуйте уважаемые!
Установил компонент videoGallery.
Добавил дополнительное поле «video» с типом ввода «videoGallery»
Создал ресурс (документ) и вставил в него ссылку на видео YouTube через дополнительное поле «video» (в привьюшке отображается и картинка и видео).
Создал чанк «videoBlog»
{set $video_json = json_decode($_modx->resource.video, true)}

{if $video_json.video?}
	
	<div><img src="{$video_json.image}" /></div>
	
	<iframe width="860" height="650" src="{$video_json['video']}" frameborder="0" allowfullscreen></iframe>
	
	{if $video_json.title?}
		<div><b>Название:</b> {$video_json.title}</div>
	{/if}
	{if $video_json.desc?}
		<div><b>Описание:</b> {$video_json.desc}</div>
	{/if}
	
{else}
	Видео нет
{/if}
Вызываю со страницы так
[[!pdoResources?
&parents=`15`
&includeContent=`1`
&tpl=`videoBlog`
]]

Fenom выдает «Видео нет».

Помогите пожалуйста советом, что я делаю не так?
Егор К.
23 августа 2016, 13:42
modx.pro
1 448
-1

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

mngatoff
23 августа 2016, 17:45
+2
во-первых:
$_modx->resource.video
— подразумевает, что Вы обращаетесь к видосу ТЕКУЩЕГО РЕСУРСА, то есть той страницы, которая открыта в браузере. Для чанка pdoresources переменная будет выглядеть так:
$_pls['tv.video']
во-вторых, инклудТВ нужно прописать в вызове сниппета.
в-третьих, наверняка json придет уже превращенным в массив, надо пробовать
    Егор К.
    23 августа 2016, 17:53
    0
    Спасибо за ответ. Вы не могли бы написать пример вызова видео со страницы через pdoResources?
      Павел Гвоздь
      23 августа 2016, 19:03
      +1
      Добавить в pdoResources:
      &includeTVs=`video`&tvPrefix=``
      И в чанке вот так добраться до TVшки:
      {$pls['video']}
        Егор К.
        23 августа 2016, 19:12
        0
        Написал как Вы указали. Все равно пишет «Видео нет»
          Павел Гвоздь
          23 августа 2016, 19:14
          0
          Можно код?
            Егор К.
            23 августа 2016, 19:17
            0
            Код вызова на странице.
            [[!pdoResources?
            &parents=`15`
            &tpl=`videoBlog`
            &includeTVs=`video`&tvPrefix=``
            ]]
            код чанка videoBlog

            {set $video_json = json_decode($pls['video'], true)}
            
            {if $video_json.video?}
            	
            	<div><img src="{$video_json.image}" /></div>
            	
            	<iframe width="860" height="650" src="{$video_json['video']}" frameborder="0" allowfullscreen></iframe>
            	
            	{if $video_json.title?}
            		<div><b>Название:</b> {$video_json.title}</div>
            	{/if}
            	{if $video_json.desc?}
            		<div><b>Описание:</b> {$video_json.desc}</div>
            	{/if}
            	
            {else}
            	Видео нет
            {/if}
              Павел Гвоздь
              23 августа 2016, 19:33
              0
              И я в соседнем топике, и Алексей здесь, писали о том, что вот этого:
              {set $video_json = json_decode($pls['video'], true)}
              использовать не надо, т.к. pdoResources уже раскодирует массив из JSON. Это означает, что эту строку надо удалить, а везде, где есть $video_json надо заменить на $pls['video'].
              Например:
              <div><b>Название:</b> {$pls['video'].title}</div>
                Егор К.
                23 августа 2016, 19:34
                0
                Большое спасибо. Буду пробовать. По результатам отпишу.
                  Егор К.
                  23 августа 2016, 19:47
                  0
                  Код на странице:
                  [[$head]]
                  [[$header]]	
                  
                  	<section>
                  		<div class="container">
                  			<div class="row">
                  	
                  				<div class="col-sm-2"></div>
                  					<div class="col-sm-8">
                  	
                  							[[!pdoResources?
                  							&parents=`15`
                  							&tpl=`videoBlog`
                  							&includeTVs=`video`&tvPrefix=``
                  							]]
                  	
                  					</div>
                  				<div class="col-sm-2"></div>	
                  
                  			</div>
                  		</div>
                  	</section>	
                  
                  [[$s-bottom]]
                  [[$footer]]
                  Код чанка videoBlog:
                  <div><b>Название:</b> {$pls['video'].title}</div>
                  — В результате строка без содержания .title:
                  «Название:»
                    Егор К.
                    23 августа 2016, 19:49
                    0
                    Возвращает пустую строку. ((
                      Егор К.
                      23 августа 2016, 20:12
                      0
                      Может быть Browser API key нужно еще вбивать?
                      Из-за этого не приходят аргументы параметров видео?
                    Егор К.
                    23 августа 2016, 19:18
                    0
                    Прошу сильно не ругаться. Со временем, надеюсь, дурацких вопросов задавать буду меньше )
                      Егор К.
                      23 августа 2016, 19:30
                      0
                      Может быть параметры нужно задать в дополнительном поле «video»?
                        Егор К.
                        23 августа 2016, 21:05
                        0
                        Урааа получилось!!! Вобщем Помог вариант
                        Василий Наумкин 10 сентября 2015, 14:36
                        И у pdoResources можно отключить декодирование JSON, если нужно — параметр &decodeJSON=`0`
                        Отключил в pdoResources декодирование JSON и дальше все по мануалу. И все заработало.
                        Спасибо Вам и Василию Наумкину!!! ))
                Павел Гвоздь
                23 августа 2016, 19:01
                +1
                Ох, не заметил сразу данного топика.
                Надо читать документацию по технологиям, с которыми работаешь. Алексей всё верно сказал, вот даже добавить нечего, кроме рекомендации к чтению доков.
                  Егор К.
                  23 августа 2016, 19:04
                  0
                  Хорошо. С чего начать?
                  Егор К.
                  24 августа 2016, 07:32
                  -1
                  Павел, здравствуйте.
                  У меня вот такой вопрос.
                  Я так и не смог получить свойства объекта видео «tittle», «desc»:
                  Проверка всех свойств объекта видео в цикле
                  {foreach $video_json as $value}
                   <div>{$value}</div>
                  {/foreach}
                  показало вот такой результат:
                  http://www.youtube.com/embed/tzW1W-gVKeg
                  tzW1W-gVKeg
                  /assets/videoGallery/2/16/99f18408ec313688c95ee7b2a3e6a36a.jpg
                  0
                  Получается свойства «tittle», «desc» отсутствует.
                  Что делать? Как получить эти данные?
                    Егор К.
                    24 августа 2016, 07:46
                    -1
                    Или вот из этого цикла нагляднее:
                    {foreach $video_json as $key => $value}
                     <div>{$key}: {$value}</div>
                    {/foreach}}
                    Результат:
                    video: http://www.youtube.com/embed/tzW1W-gVKeg
                    videoId: tzW1W-gVKeg
                    image: /assets/videoGallery/2/16/99f18408ec313688c95ee7b2a3e6a36a.jpg
                    title:
                    desc:
                    videoDuration: 0
                    }
                      Егор К.
                      24 августа 2016, 07:48
                      -1
                      Или вот из этого цикла нагляднее:
                      {foreach $video_json as $key => $value}
                       <div>{$key}: {$value}</div>
                      {/foreach}}
                      Результат:
                      video: http://www.youtube.com/embed/tzW1W-gVKeg
                      videoId: tzW1W-gVKeg
                      image: /assets/videoGallery/2/16/99f18408ec313688c95ee7b2a3e6a36a.jpg
                      title:
                      desc:
                      videoDuration: 0
                      }
                        Павел Гвоздь
                        24 августа 2016, 07:51
                        +2
                        Друг, давай ты перестанешь СПАМить данный ресурс своими одинаковыми сообщениями, как в одном, так и в разных топиках. Этим ты делу не поможешь. А вот чем реально поможешь, так это тем, что вместо того, чтобы задавать глупые вопросы — начнёшь читать документацию.
                          Егор К.
                          24 августа 2016, 12:40
                          +1
                          Договорились. )
                          Спасибо за компонент. Все установил на сайт. Видеогалерея работает. Сейчас стилизую и аякс вывод делаю.
                      Егор К.
                      23 августа 2016, 21:00
                      0
                      Урааа получилось!!! Вобщем Помог вариант
                      Василий Наумкин 10 сентября 2015, 14:36 # ↑ +1
                      И у pdoResources можно отключить декодирование JSON, если нужно — параметр &decodeJSON=`0`
                      Отключил в pdoResources декодирование JSON и дальше все по мануалу. И все заработало.
                      Всем спасибо!!!
                        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
                        24