Видео в карточке товара

  • Видео в карточке товара

    Антон Долганин 18 Июня 2014 12:35 8418
    Практически в каждом товаре/статье присутствует (или должно присутствовать) видео. В наш век пользователь гораздо охотнее смотрит, чем читает. Мое новое решение Видео-привязка очень вам поможет в этом, и вот как.

    Как было раньше? В лучшем случае заводите свойство-строку, в которое и пишите адрес на каком-нибудь Ютюбе, в шаблоне это как-то выводится. Я предлагаю вам универсальную и удобную схему абсолютно для любого видео-хостинга (Youtube, Rutube, Vimeo, и даже с ВКонтакте, и список будет пополняться, хотя и этого хватит выше крыши).

    Вот как это выглядит. После установки модуля у вас появляется новый тип свойства «Видео-привязка». Внешне они выглядят как тип «строка», хотя базируются на типе «привязка к элементам»:



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



    Более того! Это все сохраняется у вас в соседнем инфоблоке, который вы можете в будущем вывести как отдельный видео-раздел вашего сайта. Об этом ниже:)

    Как же это выглядит в карточке товара? А это уже как вам заблагорассудится (помощь в интеграции будет чуть ниже):



    Примеры карточек: раз, два.

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

    Теперь что по поводу интеграции и как все это настроить

    Самая первая настройка до всей интеграции — создать нужный инфоблок через настройки модуля (ссылка на настройки появится после установки модуля). Внимание! Инфоблок надо создавать именно автоматически. И именно созданный инфоблок вам надо прописать в настройках свойства:



    Либо вы можете привязать свойство к уже существующему инфоблоку. Например, если у вас стоит модуль Видео Тюба.

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

    Теперь интеграция в публичной части. У вас есть три пути:) Первый — это обратиться ко мне за помощью, это встанет чуть дороже на 500 рублей:
    • Перевести 1500 руб. на мои реквизиты.
    • Написать мне, с предоставлением доступов в админ.часть вашего сайта, и деталями какой шаблон поправить (время реакции до двух суток).
    • В стоимость входит полноценный данный модуль и единоразовая интеграция в любой ваш шаблон.
    Второй — купить Видео Тюб. Тогда и модуль и мою помощь вы получаете бесплатно.

    Третий путь — это интегрировать самостоятельно. Тут придется немножко покастомизировать.

    Во-первых, в настройках компонента (который выводит детальный элемент) пропишите коды свойств с видео, необходимых для вывода:



    А затем кастомизируете детальную карточку:



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

    Но на путь конечно направлю. Вам в шаблоне надо будет найти два места. Первое — это вывод в цикле всех свойств товара. Выглядит примерно так (искать лучше по фразе DISPLAY_PROPERTIES):



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

    if ($pid == 'VIDEO_TUBE') {
        continue;
    }


    VIDEO_TUBE — это код моего свойства видео-привязки, если что.

    Кстати, почему-то в шаблоне нового магазина от Битрикс весь этот код расположен в файле component_epilog.php детального шаблона. Поэтому я рекомендую править все через SSH. Там удобнее.

    Итак, из общего вывода убрали (если не убрали, поищите еще такие циклы). Теперь надо вывести в нужном месте наше видео. Это уже намного проще.

    $video = $arResult['DISPLAY_PROPERTIES']['VIDEO_TUBES']['DISPLAY_VALUE'];
    if (strlen($video)) {
        ?><h3>Видео-ролик</h3>


    Вот и все. Если у вас есть какие-то вопросы, не касающиеся интеграции, пишите, пожалуйста, сюда.