Сайты

Новостной сайт: поток материалов и редактура

Новостной сайт отличается от обычного не дизайном, а темпом. Разбираем роли редактора и автора, черновики и расписание, рубрикацию, архив и нагрузку при всплесках.

Новостной сайт отличается от корпоративного не внешним видом, а темпом. Здесь материал устаревает за часы, публикаций в день десятки, над одним текстом работают несколько человек, а трафик может вырасти в разы за пятнадцать минут. Всё это требует другой конструкции — и админки, и инфраструктуры. Разбираем, что именно меняется.

Скорость публикации как требование к системе

На новостном сайте путь от «есть информация» до «материал на главной» измеряется минутами. Если в этом пути есть хоть один шаг, требующий разработчика или ручной работы вне редактора, редакция будет опаздывать.

Что определяет скорость на практике:

  • Редактор, который не тормозит. Автосохранение каждые несколько секунд, работа при плохом соединении, отсутствие потери текста при случайном закрытии вкладки. Потерянная заметка — это не только текст, это упущенное время.
  • Публикация в один шаг. Кнопка «опубликовать» без последующего ручного размещения на главной и в рубрике. Все списки собираются автоматически.
  • Быстрая работа с медиа. Загрузка фотографии с автоматическим приведением к нужным размерам, вставка видео по ссылке, подписи и источники прямо в редакторе.
  • Заготовки. Шаблоны для повторяющихся форматов — анонс, дайджест, обновление сюжета. Часть полей заполняется заранее.

Отдельно стоит требование к скорости самого сайта для читателя. Новость открывают с телефона, часто на плохой связи, и уходят, если страница не показалась быстро. Это означает жёсткие ограничения на вес страницы, отложенную загрузку изображений и кэширование готовых страниц вместо сборки каждой при запросе.

Роли: автор, редактор, выпускающий

В редакции больше одной роли, и права в системе должны это отражать. Минимальный набор:

  1. Автор. Создаёт материалы, редактирует свои черновики, отправляет на проверку. Публиковать самостоятельно не может.
  2. Редактор. Видит все материалы, правит чужие тексты, возвращает на доработку, публикует. Отвечает за содержание рубрики или направления.
  3. Выпускающий. Управляет главной страницей: что стоит наверху, что в подборке, что снимается. Отдельная роль, потому что это другая работа — не про текст, а про приоритеты.
  4. Администратор. Пользователи, рубрики, настройки. К текстам отношения не имеет.

Ключевая деталь — материал должен иметь явное состояние: черновик, на проверке, готов к выпуску, опубликован, снят. Состояние видно всем участникам, переходы между состояниями записываются с указанием, кто и когда их сделал. Без этого в потоке из десятков материалов регулярно случается одно из двух: текст выходит непроверенным или, наоборот, зависает, потому что каждый думал, что с ним работает другой.

Полезно и разделение авторства и подписи: фактический автор в системе и подпись под материалом не всегда совпадают — материал может готовить один человек, а выходить он под именем рубрики или с двумя авторами.

В потоке дороже всего обходятся не ошибки в текстах, а материалы, про которые непонятно, кто ими сейчас занимается.

Черновики, расписание и совместная работа

Помимо срочных новостей есть материалы, которые готовятся заранее: обзоры, интервью, анонсы к известной дате. Для них нужны две вещи.

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

Защита от параллельного редактирования. Когда над текстом работают двое, изменения одного не должны затирать изменения другого. Минимальный рабочий вариант — блокировка с предупреждением «материал сейчас редактирует такой-то». Полноценное совместное редактирование удобнее, но заметно дороже, и на старте обычно избыточно.

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

Рубрикация, сюжеты и архив

Со временем на сайте накапливаются тысячи материалов, и от структуры зависит, находит их кто-нибудь или нет.

Рубрики — основное деление, их должно быть немного и они должны быть устойчивыми. Рубрика, заведённая под временную тему, через полгода превращается в мёртвый раздел. Лучше иметь пять постоянных рубрик и гибкую систему тегов, чем двадцать рубрик, половина из которых пустует.

Сюжеты — связка материалов об одной развивающейся истории. Читатель, пришедший на свежую заметку, видит предысторию и может проследить, как развивались события. Для новостного сайта это сильный инструмент удержания и одновременно способ дать старым материалам вторую жизнь.

Архив требует отдельного внимания. Старые материалы продолжают приводить читателей из поиска, и с ними нужно аккуратно обращаться:

  • адреса материалов постоянны и не меняются при смене рубрики;
  • дата публикации видна явно, чтобы читатель понимал, что смотрит прошлогоднее;
  • у устаревшего материала есть ссылка на актуальное продолжение сюжета;
  • удаление материалов — исключение, а не рутина; при удалении настраивается перенаправление.

Как всё это влияет на поисковый трафик и что ещё дают структурированные разделы, мы разбираем в материалах об аналитике — без неё непонятно, какие рубрики и сюжеты действительно работают.

Нагрузка при всплесках

Новостной сайт живёт неравномерно. Обычный день — предсказуемая нагрузка, но один материал может собрать за час больше, чем весь сайт за неделю. Инфраструктура должна выдерживать именно это, а не среднее значение.

Что помогает:

  1. Кэширование готовых страниц. Анонимный читатель получает заранее собранную страницу, а не результат запросов к базе. Это разница между сайтом, который выдерживает всплеск, и сайтом, который ложится на нём.
  2. Раздача картинок через CDN. Изображения — основная часть трафика, и отдавать их с того же сервера, что и страницы, при всплеске нельзя.
  3. Изоляция тяжёлых частей. Комментарии, счётчики просмотров, персональные блоки не должны мешать отдавать саму статью. Если счётчик перестал работать, страница обязана открыться.
  4. Сброс кэша по событию. При обновлении материала кэш конкретных страниц сбрасывается сразу, а не по истечении срока. Иначе редакция исправит ошибку, а читатели будут видеть старый текст.

Смежный вопрос — защита от наплыва автоматических запросов, которые приходят вместе с ростом заметности. Базовые ограничения по частоте запросов стоит закладывать заранее.

Обновление уже вышедшего материала

Новость живёт после публикации: появляются подробности, исправляются ошибки, меняется оценка. Редакция должна уметь править вышедшее, не теряя доверия читателя.

Рабочие правила, которые стоит заложить в систему:

  • Фактическая правка отмечается. Если изменился смысл, внизу материала появляется отметка об обновлении с датой и коротким объяснением. Орфографию правят молча, факты — нет.
  • Дата обновления показывается отдельно от даты публикации. Подмена даты публикации на дату правки сбивает читателя и выглядит как попытка выдать старое за новое.
  • Развитие сюжета — новый материал, а не переписанный старый. Иначе ссылки, которые уже разошлись, ведут на текст о другом.
  • Снятие материала фиксируется. Если публикация оказалась ошибочной, на её месте должно быть объяснение, а не пустая страница.

Что проверить перед запуском

  1. Перечислите роли в редакции и опишите, что каждая может делать в системе.
  2. Определите состояния материала и кто переводит его между ними.
  3. Убедитесь, что публикация делается в один шаг и не требует разработчика.
  4. Заложите отложенную публикацию и историю версий.
  5. Ограничьте число рубрик и решите, нужны ли сюжеты.
  6. Проверьте поведение сайта при кратном росте нагрузки, а не при средней.
  7. Договоритесь о правилах правки вышедших материалов и отразите их в интерфейсе.
  8. Настройте постоянные адреса и перенаправления для архива.

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