WORK 02 · Current

Порталы и платформы · Игровой медиа-портал

GameSite: игры, стримеры, гиды и комьюнити

Портал, не лендинг: SEO-хабы, гайды, стримеры и LFG в одном деплое.

Роль: Архитектура мульти-app портала

  • 4 appscore, games, streamers, community
  • guidesдлинные SEO-статьи
  • LFGпати и отклики
  • sitemapsпо сущностям

Задача

Нужен живой сайт вокруг игр и стримерской аудитории: индексируемые хабы, длинные гайды, витрина стримеров и комьюнити. CMS-блоки закрывают главную, но не каталоги сущностей, профили и LFG.

Результат

Четыре apps — core, games, streamers, community. SEO на топиках и гайдах, мульти-sitemap, catch-all CMS последним в urls, комьюнити без отдельного сервиса.

  • Django
  • PostgreSQL
  • Whitenoise
  • community auth

Живой сайт

Первые экраны портала

Главная, миры игр, гайд, комьюнити, LFG, стримеры и люди — живой fold, не мокапы.

Главная портала
Главная портала /
Каталог игр
Каталог игр /games/
Страница игры Valorant
Страница игры Valorant /games/valorant/
Гайд редакции
Гайд редакции /guides/valorant-agents-guide/
Комьюнити-хаб
Комьюнити-хаб /community/
LFG / пати
LFG / пати /community/party/
Стримеры
Стримеры /streamers/
Люди
Люди /community/people/

Ставка

Зачем портал, не лендинг

Search приводит на топики и гайды; комьюнити удерживает; стримеры дают лицо бренда.

В игровой нише трафик живёт на pillar-страницах и длинных гайдах, а UGC (пати, треды) возвращает аудиторию стримера. Если сделать только «красивую главную», нечего индексировать и некуда возвращаться.

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

  • Гостевой контент индексируется без логина
  • Маркетинговые страницы не подменяют каталоги сущностей
  • Editorial с сайдбаром под медиа, не «универсальный корпоратив»
/

Миры

Каталог миров

Игра задаёт мир: тематика, lookbook и CSS-тема — не плоский список карточек.

Каталог — вход в отдельные пространства. Valorant и PoE ощущаются по-разному внутри одного продукта: JSON lookbook и тема на уровне Game, без отдельного деплоя на каждую игру.

Алиасы запросов и связка с топиками делают каталог частью SEO-пирамиды, а не витриной «для красоты».

/games/

Pillar

Страница игры

Игра → топики → гайды: pillar под запрос, FAQ и связанный контент.

Topic держит «коротко о главном» и FAQ строками «вопрос | ответ» — удобно людям и FAQPage. Со страницы игры читатель уходит в топики и гайды, а не в тупик лендинга.

Так закрываются информационные и mid-tail запросы без плоских дублей посадочных под каждый ключ.

/games/valorant/

SEO

Гайды как SEO-двигатель

Длинный HTML, TOC из h2, Article JSON-LD — основной search-контур портала.

Guide — канонический материал редакции: featured для витрин, автор, привязка к топику, автоматическое оглавление. Комментарии допустимы, но не ломают SEO-тело и модерируются отдельно от тредов комьюнити.

Каждый новый гайд дешевле предыдущего: шаблон URL, разметки и списков уже есть.

/guides/valorant-agents-guide/

Витрина

Стримеры как лицо бренда

Профили, видео, live, расписание, гивы и турниры — поводы вернуться между гайдами.

Витрина кормит главную и сайдбар, не подменяя редакционные гайды. Опциональная связь со аккаунтом — стример правит своё без доступа ко всему сайту.

Календарь, розыгрыши и турниры лежат в streamers-app, чтобы не смешивать редакционный контур с LFG и games.

/streamers/

LFG

Пати и отклики

Сбор пати под team / coop / mentor — без попытки стать «ещё одним Reddit».

Party с откликами и статусами — ровно те сущности, которые нужны игровой аудитории. Антиабьюз на старте: авторство, скрытие, админка — без отдельной машины модерации.

UGC не попадает в sitemap наравне с редакцией: публичные гайды и топики открыты гостю; пати — слой вовлечения поверх.

/community/party/

Профили

Люди и публичные карточки

Публичный /u/… и completion score — находимость для LFG, не бюрократия.

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

Профиль, библиотека игр и избранное живут в community-app рядом с тредами, не в CMS-блоках главной.

/community/people/

Архитектура

Четыре apps и дисциплина URL

core, games, streamers, community — границы модулей; catch-all CMS последним.

apps.core — SiteSettings, Page/PageBlock, лиды, sitemap, общие шаблоны. games — Game, Topic, Guide. streamers — витрина и календарь. community — Profile, Party, Thread.

Префиксы /games/, /guides/, /streamers/, /community/ раньше catch-all <slug>/. Отдельные sitemap по сущностям — чтобы не смешивать приоритеты лендинга и гайда.

  • Не выносили комьюнити в микросервис до отдельной команды
  • Не строили универсальный форум «на все случаи»
  • Серверный рендер + точечный JS, без SPA ради моды
/community/

Итог

Итог

GameSite показывает, когда продукт обязан выйти за «страницу из блоков»: сущности, роли URL и комьюнити становятся продуктом. CMS остаётся слоем маркетинговых посадочных — не позвоночником портала.

Окупается при стабильном search-спросе по играм и регулярном контенте вокруг стримера: каждый новый топик и гайд дешевле, потому что контур уже есть.