Движок ранжирования по CTR
Система ранжирования на основе вовлечённости, которая выводит вперёд видео, которые ваши посетители действительно смотрят.
Большинство tube-сайтов сортируют видео по дате загрузки или количеству просмотров. Оба подхода поощряют не то, что нужно: актуальность продвигает последнее добавленное, а просмотры — то, что находится в сети дольше всего. Плагин CTR Ranking заменяет это настоящим движком вовлечённости, благодаря которому видео, на которые посетители действительно нажимают и которые смотрят, оказываются на первых позициях.
Это опциональный плагин (версия 3), поставляемый с TubePress. Активируйте его в /admin/plugins и настройте на его странице по адресу /admin/ctr.
Что такое CTR-ранжирование
CTR расшифровывается как коэффициент кликабельности — доля пользователей, которые, увидев миниатюру, выбирают на неё нажать. Ранжирование по CTR измеряет привлекательность и вовлечённость, а не возраст контента. Плагин фиксирует три реальных сигнала на стороне клиента:
- Показы — каждая миниатюра, действительно прокрученная в область видимости (через IntersectionObserver), взвешенная по позиции.
- Клики — каждый клик на карточку видео, категории, исполнителя или канала.
- Досматриваемость — насколько далеко плеер действительно воспроизводит видео, на отметках 25%, 50%, 75% и 100%.
Движок V3
Оценки пересчитываются по расписанию и объединяют четыре множителя:
ranking_score = quality x retention x freshness x fatigue- Качество — это коэффициент кликабельности, скорректированный по позиции и поверхности показа (COEC — клики относительно ожидаемых кликов). Ожидаемые клики накапливаются в момент показа на основе предшествующего значения для данного контекста и позиции, поэтому карточка на первой позиции должна превышать среднюю кликабельность первой позиции, чтобы подняться. Позиционное смещение компенсируется математически, а не приблизительно.
- Удержание награждает видео, которые досматривают до конца. Данные о завершении просмотра на отметках 25/50/75/100% продвигают контент, удерживающий зрителей, и понижают кликбейт, от которого уходят рано.
- Актуальность даёт новым загрузкам временный буст (по умолчанию до примерно 3× в первые часы, постепенно возвращаясь к нейтральному уровню в течение двух недель), чтобы хороший новый контент получал шанс на обнаружение.
- Усталость мягко снижает вес видео, которые уже часто показывались на главной странице, сохраняя разнообразие ротации.
Множитель качества ограничен сверху, и все эти веса настраиваются в расширенных настройках, если вы хотите сделать больший акцент на времени просмотра, актуальности или кликабельности.
Ранжирование сущностей
Отслеживание вовлечённости не ограничивается видео. Карточки категорий, исполнителей (порнозвёзд) и каналов также отслеживаются, и те, на которые посетители переходят чаще всего, отображаются первыми в разделах «В тренде». Рейтинговая оценка каждой сущности формируется на основе вовлечённости её опубликованных видео, а отображаемой миниатюрой становится наиболее результативное видео, которое она содержит, — таким образом, ваши самые кликабельные изображения вовлекают посетителей глубже в сайт.
Встроенная защита от спама
Поскольку оценка определяет ранжирование, она защищена от манипуляций из коробки:
- Боты и безголовые браузеры исключаются из всех сигналов.
- Каждый клик, завершение просмотра и клик по сущности засчитывается не более одного раза с одного IP, по одной цели, в час (завершения засчитываются один раз за квартиль), так что один посетитель не может накрутить видео.
- Отслеживаются только реальные, опубликованные видео — черновики и поддельные идентификаторы отклоняются.
- Множитель качества ограничен сверху, что лимитирует, насколько высоко можно поднять любое отдельное видео.
- Каждый трекинговый маяк подписан по HMAC с помощью серверного секрета и ежедневно обновляемого токена, поэтому запросы нельзя подделать.
Пул ротации главной страницы
Чтобы главная страница не выглядела одинаково весь день, плагин создаёт пул ротации из 24 групп, сформированных из ваших самых высокорейтинговых и хорошо протестированных видео. Главная страница переходит к следующей группе каждые 30 минут, благодаря чему верхняя часть сайта ощущается свежей в течение всего дня, показывая при этом контент с действительно высокой вовлечённостью. Пул можно отключить, если вы предпочитаете статичную ленту с ранжированием.
Включение и настройка
После активации плагина откройте /admin/ctr. На странице отображается статистика в реальном времени — ранжированные видео, показы, клики и средняя досматриваемость — а также кнопка Пересчитать сейчас.
- Выберите стратегию. Один клик по пресету — Balanced, Fresh & Discovery, Most Watched или Trending Now — устанавливает все веса автоматически.
- Включайте функции. Активируйте отслеживание вовлечённости, досматриваемость, ранжирование сущностей, пул ротации и фильтрацию ботов независимо друг от друга.
- Тонкая настройка при желании. Расширенная панель открывает доступ к частоте пересчёта, ограничению качества, бусту актуальности, зажиму удержания, мягкости усталости и другим параметрам. Редактирование любого значения переключает стратегию в режим Custom.
Главный переключатель — ctr_enabled. Когда он выключен, весь сайт возвращается к сортировке по числу просмотров и дате, так что вы можете мгновенно отключить ранжирование, не удаляя ничего.
Создан для масштаба
Движок разработан для каталогов с миллионами видео. Отслеживание реализовано в виде единичных пакетных upsert-операций; пересчёт разбит на фрагменты по диапазону ID и записывает только строки с реально изменившейся оценкой; при этом нет слоя кэша, который нужно инвалидировать. Оценки пересчитываются по автономному расписанию (настраивается от 5 минут до 12 часов) с использованием встроенного pseudo-cron, поэтому серверный crontab не требуется. Всё — схема базы данных, конечные точки отслеживания, задача пересчёта, подключение к сортировке и страница администратора — предоставляется плагином; ничего не прикручивается к базовому CMS.
Следующие шаги
Остались вопросы?
Откройте заявку в панели управления, и наша команда поможет.