Задать вопрос
ИП Коняхин
Компания
  • О компании
  • Лицензии
Блог
Услуги
  • Разрабатываем
    • Корпоративные сайты
    • Интернет-магазины
    • Landing page (лендинги)
  • Техническая поддержка
    • Тариф Умеренный
    • Тариф Классика
    • Тариф Максимальный
Прайс
Продукты
  • Модули 1C-Bitrix
Контакты
Ещё
    ИП Коняхин
    Компания
    • О компании
    • Лицензии
    Блог
    Услуги
    • Разрабатываем
      • Корпоративные сайты
      • Интернет-магазины
      • Landing page (лендинги)
    • Техническая поддержка
      • Тариф Умеренный
      • Тариф Классика
      • Тариф Максимальный
    Прайс
    Продукты
    • Модули 1C-Bitrix
    Контакты
    Ещё
      ИП Коняхин
      • Компания
        • Назад
        • Компания
        • О компании
        • Лицензии
      • Блог
      • Услуги
        • Назад
        • Услуги
        • Разрабатываем
          • Назад
          • Разрабатываем
          • Корпоративные сайты
          • Интернет-магазины
          • Landing page (лендинги)
        • Техническая поддержка
          • Назад
          • Техническая поддержка
          • Тариф Умеренный
          • Тариф Классика
          • Тариф Максимальный
      • Прайс
      • Продукты
        • Назад
        • Продукты
        • Модули 1C-Bitrix
      • Контакты
      Будьте на связи
      contact@konyweb.ru
      • Вконтакте

      Видео с Rutube и VK на сайт под управлением 1с-Битрикс

      • Главная
      • Блог

      Расскажу как разместить видео с VK и Rutube на сайтах Битрикс через пользовательское свойство элементов инфоблока.


      В этой статье приведу пример как размещать видео с Rutube или VK в шаблоне элемента инфоблока через множественное пользовательское свойство.

      В этом примере будет одно поле под адрес видео, в котором будет проверяться значение на принадлежность к той или иной площадке

      1. Создаем свойство инфоблока в котором мы будем хранить адрес видео. Множественное свойство типа "строка", символьный код - любой (в нашем случае "VIDEO")

      В нашем созданном свойстве укажу 2 видео: одно с vk и одно с rutube.

      2. В файле result_modifier.php получаем и обрабатываем наше свойство.

      if ($arResult['DISPLAY_PROPERTIES']['VIDEO']) {
          foreach ($arResult['DISPLAY_PROPERTIES']['VIDEO']['VALUE'] as $key => $value) {
              // Проверяем,  RuTube или VK
              $isRutube = strpos($value, 'rutube') !== false;
      	$isVk = strpos($value, 'vk') !== false;
              // Если это не Vk и не RuTube, пропускаем
              if (!$isRutube && !$isVk) continue;
      
              // RuTube
              if ($isRutube) {
                  preg_match("/\/video\/([a-zA-Z0-9_-]+)/", $value, $matches);
                  if (!empty($matches[1])) {
                      $videoId = $matches[1]; // ID для RuTube
                      $platform = 'rutube';
                  } else {
                      continue; // Пропускаем, если не удалось получить ID
                  }
              }	
      	// Vk
              if ($isVk) {
                  preg_match("/video-([\d]+)_(\d+)/i", $value, $matches);
      	    if (!empty($matches[1]) && !empty($matches[2])) {
      		$videoOid= $matches[1];
      		$videoId= $matches[2];
      		$platform = 'vk';
      	     }
      	     else{
      		continue; // Пропускаем, если не удалось получить ID
      	     }
              }
      //формируем конечный массив
              $arResult['VIDEO'][] = array(
                  'LINK' => $value,
      	    "OID" => $videoOid,
                  'NAME' => $arResult['DISPLAY_PROPERTIES']['VIDEO']['~DESCRIPTION'][$key],
                  'ID' => $videoId,
                  'PLATFORM' => $platform
              );
          }
      }
      

      3. В шаблоне компонента в нужное место выводим iframe с видео

      
      <?php if($arResult['VIDEO']):?>
        <div class="vide_container">
        <?php foreach($arResult['VIDEO'] as $arFile):?>
          <div class="item-det-video-wrap">
          <?php if ($arFile['PLATFORM'] == 'rutube'): ?>
          <iframe loading="lazy" width="800" height="450" src="https://rutube.ru/play/embed/<?php = $arFile['ID'] ?>" frameborder="0"></iframe>
          <?php endif; ?>
          <?php if ($arFile['PLATFORM'] == 'vk'): ?>
          <iframe loading="lazy" width="800" height="450" src="https://vk.com/video_ext.php?oid=-<?php = $arFile['OID'] ?>&id=<?php = $arFile['ID'] ?>&hd=2"></iframe>
          <?php endif; ?>
          </div>							
          </div>
        <?php endforeach?>
        </div>
      <?php endif?>
      
      

      Вставка видео в произвольное место

      Здесь нет никаких изменений. Вам нужно получить iframe код для вставки и разместить в нужном месте.

      В Rutube - это например кнопка "Поделиться" далее кнопка "Код вставки плеера"

      Вставляем этот код iframe в любое место на сайте.

      За любой помощью в доработках по сайтам можете обращаться ко мне на почту - contact@konyweb.ru


      Назад к списку
      Это интересно
      • Новая вирусная уязвимость Модулей Esol
        Новая вирусная уязвимость Модулей Esol
      • Авторизация в битрикс по номеру телефона и кодом по смс
        Авторизация в битрикс по номеру телефона и кодом по смс
      • Новый вирус под уязвимости шаблона Аспро Битрикс
        Новый вирус под уязвимости шаблона Аспро Битрикс
      • Ошибка "Не заполнено обязательное поле Условие" в сео умного фильтра Аспро Битрикс
        Ошибка "Не заполнено обязательное поле Условие" в сео умного фильтра Аспро Битрикс
      • Создание штрих и QR кодов в Битрикс CMS
        Создание штрих и QR кодов в Битрикс CMS
      Компания
      О компании
      Лицензии
      Продукты
      Модули 1C-Bitrix
      Услуги
      Разрабатываем
      Техническая поддержка
      Наши контакты


      contact@konyweb.ru
      © 2025 Все права защищены.
      • Вконтакте