← Вся документация
Portal Studio полевой гид

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

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

Порталы Документ v2Администратор + РазработчикEnterprise Release WorkflowОбновленный 1 август 2026
Руководство администратора · Архитектура

Узнайте, чем владеет студия

Portal Studio владеет оболочкой, обращенной к клиенту: страницами, размещением компонентов, токенами бренда, отзывчивым поведением, навигацией, нижним колонтитулом, презентацией личности, поездками и релизами билетов. Справочный центр владеет языками, категориями, разделами и контентом статьи. Студии потребляет этот контент через защищенный мост; он никогда не создает второй магазин статей.

Help Center + Ticket + ID услугиАдаптеры данных Permission-safeПортальный документ v2 проектОдин компилятор и рендерерПредварительный просмотр и опубликованный портал
Правило одного рендера: Предварительный просмотр и публичные страницы используют один и тот же документ/контракт компилятора. Публикация никогда не переключается на несвязанный шаблон.
Portal Studio - карта рабочего пространства
Живой холстРабочий стол · Клиент
Портал клиентовТот же структурированный документ, используемый в предварительном просмотре и публичном рендеринге
Карта интерфейса: рельс работы, живое полотно и инспектор нацелены на одну и ту же стабильную страницу и выбор узла.
Администратор · Начало

Полная готовность перед тем, как строить глубоко

  1. Открыть Portal Studio→Начинать→Готовность.
  2. Подтвердите канонический адрес Портала и откройте его в отдельной вкладке.
  3. Установите логотип, значок браузера, сенсорную иконку, социальный образ и цвет темы.
  4. Подтвердите языки Центра поддержки; измените авторитет языка в Центре помощи, а не в Студии.
  5. Настройка навигации и глобального корпоративного футера.
  6. Выберите билет и настройте хотя бы одну форму запроса.
  7. Поддерживайте по крайней мере один безопасный метод входа в систему и проверьте обнаружение личности.
  8. Запускайте Quality и установите подписанное предварительное рукопожатие.
  9. Создайте первый управляемый выпуск после того, как каждый блокирующий элемент будет ясен.

Процент готовности рассчитывается из сохраненных данных рабочего пространства и состояния предварительного просмотра. Выбор маршрутов элемента непосредственно к его собственной панели.

Администратор · Строить

Создание страниц и многоразовых разделов

  1. Открыть Создайте → Страницы Выберите защищенную системную страницу или создайте пользовательскую страницу.
  2. Установить маршрут, заголовок, режим доступа и поведение локализованной системы. Защищенные системные маршруты удалять нельзя.
  3. Открыть Компонентыфильтрация по работе или зрелости и размещение компонента в совместимом слоте;
  4. Используйте инспектора для контента, внешнего вида, связывания, видимости и доступности.
  5. Используйте многоразовые шаблоны для повторяющихся структур; сохраняйте различия в вариантах организации или бренда.
  6. Сохраните проект и упражняйте загрузку, пустую, ошибку, гостевые и подписанные состояния в предварительном просмотре.
Библиотека компонентов · Санитаризованная карта интерфейса
Поиск знанийГА · Безопасный клиентКатегория:СеткаГА · Центр помощиСтатья ОрганПеревод: DTOФорма запросаGA · версияВремя билетаБета-предупреждениеДиаграмма данныхПланируемые блоки публикуются
Карта интерфейса: категория, совместимость и зрелость видны перед размещением. Планируемые компоненты блокируют публикацию; бета-компоненты требуют явной обработки выпуска.
Администратор · Бренд и отзывчивый

Просмотр реальных путешествий, а не одного счастливого экрана

  1. Выберите гостевую поддержку, входной билет, платежную помощь, организацию или передачу знаний.
  2. Переключайте персонал, организацию, роль и язык Центра помощи.
  3. Проверяйте мобильные, большие мобильные, планшеты, ноутбуки, настольные компьютеры, широкие и сверхширокие точки останова.
  4. Проверяйте унаследованные, переопределённые и сброшенные значения; избегайте ненужного дублирования точки останова.
  5. Запуск клавиатуры, RTL, пониженное движение, загрузка, пустые, недоступные и разрешения состояния.
  6. Используйте Test Lab для доступности, полезной нагрузки, маршрута, связывания и выводов рендерера перед обзором.
Зеленый холст не является решением о выпуске. Управляемый предполетный рейс, состояние обзора, возможности и доказательства выпуска решают, может ли Портал публиковаться.
Администратор · Опыт

Управлять Центром поддержки уровня Zendesk без дублирования контента

  1. Создавать категории, разделы, статьи, переводы, вложения и шаблоны в Центр помощи.
  2. Включите там языки; локализованные слизни, поиск, каналы, SEO и хром статьи следуют одному и тому же авторитету.
  3. В студии размещают поиск знаний, категории/ресурсные сетки, ленты, тематические аккордеоны, статьи, таблицу содержимого, обратную связь, связанные и предыдущие/следующие компоненты.
  4. Настройка показанных, популярных и последних лент; использование контекстных предложений в потоках билетов.
  5. Предварительный просмотр безрезультатных, длинных статей, вложений, отзывов, часов / подписки и передачи билета.
  6. Проверяйте чистые маршруты, канонические / hreflang, структурированные данные и кэш-память после публикации.
Граница полномочий: Редактировать содержание статьи и языки клиентов в справочном центре. Использовать Portal Studio только для того, чтобы составить как знания обнаруживаются и отображаются.
Администратор · Идентификационные данные и организации

Безопасная настройка входа

  1. Открыть Идентичность и организации → Идентификация И пусть хотя бы один из них будет в порядке.
  2. Выберите метод по умолчанию, политику регистрации, продолжительность сеанса, SSO-применение домена и поведение обнаружения.
  3. Добавьте провайдеров с визуальными полями маршрутизации: тип, домены, приоритет, презентация, включенное и проверенное состояние. Секреты остаются в подсистеме идентификации.
  4. Для SCIM, включить резервирование, скопировать точную конечную точку рабочего пространства и повернуть маркер. Хранить одноразовый маркер в IdP.
  5. Карта претензий и членства в организации, затем тестирование создания, обновления, членство в группе и деактивация с тестовым арендатором.
  6. Предварительный просмотр гостя, клиента, делегированной организации и заблокированных государств перед публикацией.
Никогда не отправляйте файл cookie студийной сессии SCIM.Это несессионный, связанный с рабочим пространством носитель API Вращайте токен после случайного воздействия.
Администратор · Билетные поездки

Составьте полный маршрут поддержки

  1. Выберите прямую форму, мастера, поиск-первый, хаб или сервис-декс вход.
  2. Создайте именованную, версию формы запроса с разделами и доступными полевыми метками.
  3. Создайте визуальные условия, маршрутизацию, SLA и этапы утверждения; расширенный JSON предназначен только для пересмотренных изменений разработчика.
  4. Настройка списка, детали, нити, временной шкалы, крепления, утверждения, SLA и поверхностей ответа.
  5. Тестирование гостевого поиска, запросы с подпиской, видимость организации, отказ загрузки, уведомление по электронной почте и отклонение знаний.
  6. Сохраните черновик; опубликуйте только после того, как адаптер маршрута и путь уведомления пройдут предполетный.
Администратор · Обзор и релиз

Пройти через регулируемый выпуск

Скриншоты спасеныВ обзореУтвержденныйЗапланировано или опубликованоНаблюдается или откатывает назад
  1. Запустите проверку и тест-лабораторию. Исправьте блокировку результатов; признайте разрешенные предупреждения с контекстом.
  2. Добавить заметки о выпуске и запросить рецензию. Рецензенты комментируют стабильные пути страницы / узла.
  3. Утверждающие проверяют дифф, предварительный просмотр поездок, изменения разрешения и доказательства.
  4. Опубликовать или распланировать через фонового работника. Уход из студии не отменяет длительную работу.
  5. Следите за прогрессом, здоровьем и корреляцией. Остановитесь/возвращайтесь только с контроля работы.
  6. Проверяйте критически важные маршруты, удостоверения личности, билеты и знания. Возвращайтесь к неизменному предварительному выпуску, когда это необходимо.
способностьЦель
Вид / РедактироватьПроверять или изменять проекты без разрешения.
Обзор / УтвержденоОтдельные отзывы и одобрение от авторства.
Расписание / Публикация / RollbackНезависимый контроль производства.
Идентичность / SCIM / Миграция / Компоненты / ДиагностикаОграничьте операции чувствительных специалистов.
Администратор · Мигрант и расширение

Мигрант с доказательствами и обратным путем

  1. Выберите план провайдера и создайте сухой запуск.
  2. Обзор обнаружил настройки, некартированные значения, количество контента и визуальные захваты четности.
  3. Заполните безопасные картографические данные и повторите структурированный дифф.
  4. Применяйте к черновику, согласовывайте счета и просматривайте каждое защищенное путешествие.
  5. Запись авторизованного принятия; никогда не перезаписывайте текущий опубликованный выпуск во время импорта.
  6. Публикуйте через управление и сохраняйте отчет о миграции, выпустите ID и точку отката вместе.
Руководство по расширению разработчика · Архитектура

Расширяйте контракты, а не шаблоны

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

Порталы Документ v2

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

Реестр компонентов

Один контракт предусматривает проверку студии, компилятора, документации, миграции и зрелости.

Реестр источников данных

Разрешенные, только для чтения и разрешенные DTO заменяют произвольные SQL или динамические действия.

Один рендер

Предварительный просмотр и сбор общего объема производства, санация, бюджеты и штаты исполнения.

Разработчик · Компонентный контракт

Определить компонентный пакет

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

{
  "schema_version": 1,
  "id": "acme.support_health",
  "slug": "acme-support-health",
  "name": "Support health",
  "version": "1.0.0",
  "entry": "renderer.php",
  "renderer": "server",
  "server_renderer": "renderer.php",
  "public_renderer": "public.js",
  "schema": {
    "type": "object",
    "properties": {
      "heading": {"type": "string", "maxLength": 120},
      "showSla": {"type": "boolean", "default": true}
    },
    "additionalProperties": false
  },
  "permissions": ["tickets.read"],
  "data_scopes": ["tickets.mine"],
  "accessibility": {
    "landmark": "section",
    "nameFrom": "heading",
    "emptyState": true,
    "errorState": true
  },
  "performance": {"max_js_bytes": 12000, "max_css_bytes": 8000},
  "performance_budget": {"js": 12000, "css": 8000, "requests": 0}
}

Форма узла

{
  "id": "node-support-health",
  "type": "custom.acme_support_health",
  "props": {"heading": "Support health", "showSla": true},
  "bindings": {"requests": {"source": "tickets.mine", "limit": 5}},
  "responsive": {"mobile": {"padding": "16px"}, "desktop": {"padding": "24px"}},
  "conditions": [{"field": "identity.signed_in", "operator": "equals", "value": true}],
  "a11y": {"label": "Support health"}
}
  • Идентификаторы остаются стабильными при редактировании и миграции.
  • Свойства отклоняют незадекларированные поля и небезопасные HTML.
  • Каждый вид, связанный с данными, определяет загрузку, пустое разрешение и выход из-за ошибки перезаписи.
  • Контейнерные компоненты называют свои слоты; листья не могут принимать произвольных детей.
  • Марк зрелость честно: запланированные блоки, предупреждает бета-тестирование, ГА требует полных доказательств.
Разработчик · Источники данных и привязки

Использование DTOs permission-safe

  1. Выберите существующий пунктирный идентификатор, такой как tickets.mine, knowledge.featured или customer.profile.
  2. Обязательные только поля, объявленные его версиями DTO. Неизвестные источники терпят неудачу data_source.unknown.
  3. Перейдите в уже авторизованный контекст Портала; никогда не принимайте рабочее пространство / личность клиента из ненадежного имущества.
  4. Пределы списка зажимаются до 1–100. Нормализация страницирования, локали и значений поиска.
  5. Если новый источник неизбежен, добавьте его стабильное определение, безопасное отображение, разрешения, пустое поведение и предварительный просмотр вместе.
{
  "success": true,
  "source": "tickets.mine",
  "contract_version": 1,
  "items": [
    {"id": 42, "number": "REQ-42", "subject": "Example", "status": "open"}
  ]
}
Мутации требуют явного авторизованного действия службы, связывания рабочего пространства, проверки CSRF / сессии или на предъявителя, идемпотентности при необходимости и типизированной оболочки ошибки.
Разработчик · Безопасность

Оставайтесь в пределах доверительных границ

границаТребуемое поведение
Рабочее пространствоРешите с доверенного хоста / маршрута / сессии, затем нажмите каждое чтение и запись перед выполнением.
OpenAIИспользуйте дезинфицирующее средство/парсер Портала. Никогда не идентифицируйте недоверенные атрибуты, URLs, CSS Или сценарий.
Предварительный просмотрТребуется окно источника с тем же происхождением, подписанная версия канала и nonce. Игнорировать незапрашиваемые сообщения.
ИдентичностьХраните секреты вне документов. SCIM является носителем-аутентифицированным, бессессионным и связанным рабочим пространством.
ПакетыОтклонить обход, абсолютные пути, ссылки / специальные файлы, негабаритные архивы, контрольную сумму / несоответствие подписи и неизвестные разрешения.
ошибкиВернуть стабильный код, безопасное сообщение, возможность повторного использования, исправление и корреляционный идентификатор; зарегистрировать частные исключения на стороне сервера.
ЗнанияНикогда не пишите и не дублируйте статьи в справочном центре в расширении.
{
  "success": false,
  "error": {
    "code": "studio.permission_denied",
    "message": "You do not have permission to publish the Portal.",
    "retryable": false,
    "correlation_id": "ps_…",
    "meta": {"capability": "publish"}
  }
}
Разработчик: Package and Migration

Проверка, установка и модернизация атомарно

  1. Поставить component.json В корне ZIP и сохраняйте каждый путь относительным.
  2. Сначала проверьте. Установщик закрывает архивы 500 входы и 25 MB извлечено; проверка безопасности добавляет независимые ограничения.
  3. Проверить ожидаемый SHA-256 и подпись пакета в процессе выпуска.
  4. Установите в каталог с версиями. Никогда не мутируйте установленную версию на месте.
  5. Обеспечить миграцию свойств для нарушения изменений схемы и сохранить неизвестные поля совместимости.
  6. Откройте компонент в проекте, запустите каждый государственный / обзорный / личный договор и опубликуйте его через управление.
  7. Rollback активирует предварительный неизменяемый компонент/документ; сохраняет доказательства воспроизводимости.
Разработчик · Тесты и выпуск

Доказать расширение на том же хэше выпуска

php tools/portal_studio_certify.php --source-only --json
php tools/test_portal_studio_contract.php
php tools/test_portal_one_renderer.php
php tools/test_portal_studio_engineer.php
php tools/test_portal_component_contracts.php
php tools/test_portal_one_renderer.php
php tools/test_portal_shell_contract.php
php tools/test_portal_knowledge_contract.php
node node_modules/@playwright/test/cli.js test tests/e2e/portal-studio-shell-visual-contract.spec.js tests/e2e/portal-custom-code-runtime.spec.js

Сведения о источнике необходимы, но недостаточны. Прикрепление базы данных/миграция, визуальный образ реального браузера, удостоверение личности, выделение авторизации, доступность, производительность, очередь/крон, почта/привязка, резервное копирование/восстановление и развертывание доказательств к одному и тому же неизменному хэшу выпуска. Неизвестные требуемые доказательства должны не выпускать выпуск.

  • Единица: схема, санация, форма DTO, условия, миграции и типизированные сбои.
  • Договор: загрузка/пустая/ошибка/успех, срок погашения, слоты, привязки и паритет одного рендерера.
  • Браузер: клавиатура, фокусировка, семантика, RTL, зум/рефлекс, уменьшенное движение и каждая точка останова.
  • Безопасность: межпространственные зонды, подделанные действия, пакетные атаки, спуфинг предварительного просмотра и секретная утечка.
  • Операции: устойчивый прогресс, отпуск/возвращение, остановка/отказ/резюме, сердцебиение планировщика и откат.
Администратор + Разработчик · Восстановление

Устранение неполадок по идентификатору состояния и корреляции

государствоЧто делать
РазрешениеСкрытый пользовательский интерфейс - это удобство; бэкэнд всегда обеспечивает его.
валидацияОткройте страницу/узл/поле, исправьте его, а затем повторите предполетный полет.
конфликтПерезагрузите последнюю версию, сравните изменения и повторно нанесите намеренно.
Offline / RetryableСохраните проект, восстановите связь, повторите действие и проверьте долговечное состояние работы.
Fatal / НедоступноКопируйте идентификатор корреляции и временную метку для поддержки. Никогда не вставляйте секреты или текст частного исключения.
Публикация провалиласьПроверяйте выход перед полетом / работой, повторяйте только перезапускаемые этапы или возвращайтесь к последнему здоровому выпуску.
SCIM 401/403Подтвердите конечную точку / рабочее пространство, маркер на предъявителя, включенное состояние и вращение; никогда не используйте cookie сеанса браузера.
Знание застойноеПроверьте локализацию / публикацию в справочном центре, а затем проверьте недействительность кэша и чистый локализованный маршрут.

Это руководство готово к печати. Используйте Print → Save as PDF для контролируемой автономной копии.