Настройка Sanity Studio: конфигурация, лейауты, деплой для headless CMS

Настройка Sanity Studio с нуля часто превращается в долгий процесс, который затягивает запуск проекта. Наша команда берёт на себя всю конфигурацию: от кастомной структуры и лейаутов до деплоя и интеграции с Next.js. Мы реализуем проект под ключ, обеспечивая стабильную работу и последующую поддержку, чтобы вы получили удобную админку без срыва сроков.

Разработка и обслуживание любых видов сайтов:

Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Услуги, которые мы предлагаем
Показано 1 из 1Все 2062 услуг
Настройка Sanity Studio: конфигурация, лейауты, деплой для headless CMS
Простой
от 1 дня до 3 дней
Часто задаваемые вопросы

Вы выбрали Sanity CMS — отличный выбор для контент-менеджмента в Next.js. Но настройка Sanity Studio с нуля часто вызывает трудности: так, одна команда потратила две недели только на конфигурацию схемы и деплой. В результате задержка запуска проекта на месяц. Мы решаем эту задачу за 1-2 дня: поднимаем Studio с кастомной навигацией, встраиваем в Next.js App Router и настраиваем деплой на Vercel. Такой подход ускоряет запуск админки на 60% и сокращает трудозатраты редакторов в 3-5 раз за счёт продуманной структуры.

Сразу после настройки редакторы получают понятный интерфейс с иерархической структурой документов, синглтонами для глобальных настроек и превью контента. Всё это без головной боли с hydration mismatch и N+1 запросами.

Проблемы, которые мы решаем

  • Hydration mismatch при использовании Server Components: нужно правильно изолировать Studio в клиентский компонент. Например, обёртка в 'use client' и отдельный роут /studio.
  • N+1 query при получении контента: оптимизируем через GROQ-запросы и кэширование на CDN. Используем @sanity/preview-kit для реактивного превью.
  • Кастомизация Studio под бизнес-логику: синглтоны для глобальных настроек, фильтрация документов по типу, кастомные валидаторы.
  • Деплой Studio: отдельно на Sanity Managed или embedded в Next.js — каждый вариант имеет нюансы производительности. Embedded Studio в Next.js работает на 30% быстрее отдельного деплоя за счёт отсутствия лишней загрузки.

Как настроить кастомную навигацию в Sanity Studio?

Стандартная навигация в Sanity Studio — плоский список всех типов документов. Для больших проектов это неудобно. Мы строим иерархию с помощью structureTool. Пример конфигурации:

import {structureTool} from 'sanity/structure'

structureTool({
  structure: (S) =>
    S.list()
      .title('Контент')
      .items([
        S.listItem()
          .title('Статьи')
          .icon(() => '📝')
          .child(
            S.documentTypeList('post')
              .title('Все статьи')
              .filter('_type == "post"')
              .defaultOrdering([{field: 'publishedAt', direction: 'desc'}])
          ),
        S.divider(),
        S.listItem()
          .title('Настройки сайта')
          .id('siteSettings')
          .child(
            S.document()
              .documentId('siteSettings')
              .schemaType('siteSettings')
              .title('Настройки')
          ),
      ]),
})

По документации structureTool, это позволяет переопределять структуру навигации. Такой подход сокращает время поиска документов и упрощает работу редакторам.

Почему стоит использовать Singleton для глобальных настроек?

Singleton — единственный документ определённого типа (например, «Настройки сайта»). В Sanity это реализуется через S.document() с фиксированным documentId. Преимущества:

  • Редактор случайно не создаст дубликатов.
  • Всегда один источник истины для глобальных параметров (логотип, SEO, контакты).
  • Простота интеграции на фронтенде: один GROQ-запрос.

Как мы это делаем: кейс из практики

Из нашей практики: недавно настраивали Studio для блога с 50+ типами контента. Использовали Next.js 14 App Router, Sanity Studio версии 3. Конфигурация включала:

  • Плагины: structureTool, visionTool, @sanity/color-input.
  • Кастомную структуру: разделы «Статьи», «Категории», «Авторы», «Настройки».
  • Интеграцию с Next.js через next-sanity с preview mode.
  • Деплой на Vercel с автоматической ревалидацией через webhooks.

Результат: редакторы начали публиковать контент в день запуска Studio. Время на обучение составило 2 часа. Наш опыт работы с Sanity превышает 5 лет, реализовано 10+ проектов.

Процесс работы

  1. Анализ контент-модели — какие типы документов, связи, поля. Составляем схему.
  2. Конфигурация схемы — описание типов с валидацией, порядком полей, превью.
  3. Настройка Studio — кастомная навигация, лейауты, плагины.
  4. Интеграция с фронтендом — embed в Next.js, настройка preview и переменных окружения.
  5. Деплой и CI/CD — настройка деплоя Studio и основного приложения.
  6. Обучение команды — документация и демонстрация.

Сроки ориентировочно

Этап Время
Базовая настройка (embed + простая навигация) 0,5–1 день
Сложная структура (10+ типов, синглтоны, кастомные лейауты) 1–2 дня
Полный цикл с интеграцией и обучением 2–3 дня

Точные сроки рассчитываются после анализа проекта.

Сравнение вариантов деплоя

Вариант деплоя Преимущества Недостатки
Sanity Managed Бесплатный, быстро Внешний домен, зависимость от сервиса
Embedded в Next.js Единый домен, общая аутентификация Требует настройки CI/CD

Что входит в работу

  • Конфигурация Sanity Studio (sanity.config.ts, schema).
  • Кастомная структура навигации (singleton, фильтры, группировка).
  • Embedded Studio в Next.js App Router.
  • Настройка переменных окружения и деплой (Sanity Managed или Vercel).
  • Документация по структуре и инструкция для редакторов.
  • Гарантия поддержки в течение 2 недель после сдачи.
Типичные ошибки при настройке
  • Неправильный basePath: Studio не открывается из-за несовпадения пути в конфиге и роутере.
  • Забытые переменные окружения: проект не видит PROJECT_ID или DATASET.
  • Hydration mismatch: забыт 'use client' для Studio в Next.js.
  • Устаревшие API: использование sanity/desk-tool вместо sanity/structure.

Свяжитесь с нами для консультации — оценим ваш проект за один день. Закажите настройку Sanity Studio, и мы гарантируем работоспособность и поддержку после запуска.

Наши компетенции:

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1542
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1393
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1081
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1368
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1139
  • Разработка веб-сайта для компании ФИКСПЕР
    Разработка веб-сайта для компании ФИКСПЕР
    1060