Разработка портала онлайн-курсов на 1С-Битрикс
Компания записала 40 часов обучающего видео, залила на YouTube, раздала ссылки по email. Через месяц выясняется: 70% учеников не дошли до второго урока, никто не знает, кто что прошёл, сертификаты выписываются вручную в Canva, а новый сотрудник получает ссылку на плейлист с припиской «посмотри, что успеешь». Портал онлайн-курсов на 1С-Битрикс превращает набор видео в управляемый образовательный процесс: структура, прогресс, проверка знаний, сертификация, оплата.
Структура курса
Курс — не плоский список уроков. Это иерархия с чёткой последовательностью и зависимостями.
Модель данных:
- Курс — инфоблок верхнего уровня: название, описание, обложка, автор, уровень сложности, длительность, категория
- Модуль (раздел) — секция инфоблока: тематический блок из нескольких уроков
- Урок — элемент инфоблока: видео, текстовый материал, практическое задание или тест
- Бонусные материалы — файлы для скачивания, чек-листы, шаблоны (файловые свойства)
Типы уроков:
| Тип | Содержание | Проверка прохождения |
|---|---|---|
| Видеоурок | Встроенный видеоплеер | Просмотр > 90% длительности |
| Текстовый урок | Статья с иллюстрациями | Отметка «Прочитано» |
| Тест | Вопросы с вариантами ответов | Набрано ≥ N баллов |
| Практическое задание | Описание + поле для загрузки результата | Проверка преподавателем |
| Вебинар | Ссылка на трансляцию + запись | Присутствие ≥ 80% времени |
Зависимости: урок 3 доступен только после прохождения урока 2. Модуль «Продвинутый» открывается после завершения модуля «Базовый». Реализуется через проверку статуса прохождения предыдущего элемента при открытии текущего.
Видеохостинг и плеер
Видео — основной формат контента. Вопрос: где хранить и как отдавать.
Варианты:
- Собственный сервер — файлы на диске, отдача через nginx с ограничением доступа (X-Accel-Redirect). Плюс: полный контроль. Минус: нагрузка на канал, нужен CDN
- Облачный видеохостинг — Kinescope, VDO.Cipher, Vimeo OTT. Плюс: DRM-защита, адаптивный стриминг (HLS), аналитика просмотров. Минус: ежемесячная плата
- S3-совместимое хранилище + плеер на фронте (Video.js, Plyr). Компромисс между ценой и контролем
Защита от скачивания — критичный момент для платных курсов:
- Подписанные URL с ограниченным временем жизни (token-based access)
- DRM (Widevine, FairPlay) — через облачные хостинги
- Привязка к домену — видео воспроизводится только на портале
- Водяные знаки с email пользователя — для идентификации источника утечки
Плеер встраивается в шаблон элемента инфоблока. При воспроизведении — AJAX-запрос на сервер каждые 30 секунд для фиксации прогресса.
Система прогресса
Прогресс — то, что мотивирует ученика продолжать. И то, что позволяет администратору видеть эффективность курса.
Хранение прогресса:
- Кастомная таблица:
user_id,lesson_id,status(не начат / в процессе / завершён),progress_percent,score,completed_at - Обновляется при каждом действии: просмотр видео, ответ на тест, отправка задания
Отображение для ученика:
- Прогресс-бар на странице курса (70% пройдено)
- Чекмарки напротив завершённых уроков
- Предполагаемое время до завершения
- Дашборд со всеми курсами и их статусами
Отображение для администратора/преподавателя:
- Воронка: записались → начали → прошли 50% → завершили
- Средний балл по тестам и заданиям
- Уроки с максимальным оттоком (где бросают)
- Время прохождения каждого урока
Тестирование и задания
Тесты — инструмент проверки знаний и вовлечения.
Типы вопросов:
- Один правильный ответ (radio)
- Несколько правильных ответов (checkbox)
- Соответствие (drag-and-drop)
- Свободный ответ (текстовое поле, проверка преподавателем)
- Заполнение пропусков
Реализация: отдельный инфоблок «Тесты» с привязкой к уроку. Вопросы — элементы инфоблока с свойствами: текст вопроса, варианты ответов (множественное свойство), правильные ответы, баллы. Фронтенд — кастомный компонент с таймером, перемешиванием вопросов и вариантов.
Практические задания:
- Ученик загружает файл (код, документ, макет) или вставляет ссылку
- Преподаватель получает уведомление, проверяет, ставит оценку, пишет комментарий
- Ученик видит результат в личном кабинете
- Статус задания: отправлено → на проверке → принято / на доработку
Сертификаты
Сертификат — финальная точка курса. Генерируется автоматически при выполнении условий (все уроки пройдены, тесты сданы с баллом ≥ N).
Генерация:
- Шаблон сертификата — PDF с переменными: ФИО, название курса, дата, уникальный номер
- Библиотека
TCPDFилиmPDFдля генерации на стороне сервера - Уникальный URL для верификации:
/certificate/verify/ABC-12345/— страница подтверждает, что сертификат подлинный - QR-код на сертификате со ссылкой на верификацию
Сертификаты хранятся в инфоблоке с привязкой к пользователю и курсу. Скачивание — из личного кабинета.
Оплата курсов
Монетизация через модуль «Интернет-магазин» (sale) 1С-Битрикс.
Модели оплаты:
| Модель | Реализация | Когда подходит |
|---|---|---|
| Разовая покупка | Товар = курс, оплата через ЮKassa/CloudPayments | Отдельные курсы с фиксированной ценой |
| Подписка | Рекуррентные платежи, доступ ко всем курсам | Библиотека из 10+ курсов |
| Рассрочка | Несколько платежей по графику | Дорогие программы (> $200) |
| Бесплатный с upsell | Часть уроков бесплатно, остальные — за оплату | Привлечение аудитории |
| Корпоративный | Счёт на юрлицо, пакет лицензий | B2B-продажи |
Логика доступа после оплаты:
- Заказ оплачен → пользователь добавляется в группу «Ученики курса X» → права на инфоблок курса открывают доступ к урокам
- При подписке — ежемесячная проверка статуса оплаты через агент. Подписка истекла → удаление из группы → доступ закрыт, прогресс сохранён
Промокоды и скидки — через стандартный механизм купонов модуля sale. Партнёрские промокоды с отслеживанием источника.
Дополнительные функции
Форум/чат курса. Каждый курс — отдельный чат или форум, где ученики задают вопросы, преподаватель отвечает. Реализация через модуль «Форум» или кастомный чат на WebSocket.
Уведомления:
- Напоминание о незавершённом курсе (не заходил 7 дней)
- Новый урок добавлен
- Задание проверено
- Сертификат готов
Геймификация:
- Баллы за прохождение уроков
- Бейджи за достижения (первый курс, 5 курсов, все тесты на отлично)
- Рейтинг учеников
SEO и маркетинг
-
Каталог курсов — посадочные страницы по категориям:
/courses/programming/,/courses/marketing/ -
Микроразметка
Courseпо Schema.org: название, описание, провайдер, рейтинг - Бесплатные уроки как лид-магнит — индексируются поисковиками, привлекают трафик
-
Отзывы выпускников —
Review+AggregateRatingдля звёзд в сниппете - Лендинги курсов — отдельные промо-страницы с программой, преподавателем, отзывами, кнопкой покупки







