← All dokumentation
Portal Studio fältguide

Bygg djärvt. Publicera säkert.

En praktisk referens för administratörer som formar kundupplevelsen och utvecklare som utökar den. Det dokumenterar den verkliga studio-arkitekturen, styrd frisläppningsväg, Hjälpcenter ägande, identitet, migrationer, komponentkontrakt och återhämtning.

Portaldokument v2Administratör + utvecklareEnterprise släpper arbetsflödeUppdaterad 1 Augusti augusti 2026
Administratörsguide · Arkitektur

Vet vad Studio äger

Portal Studio äger kundanpassningsskalet: sidor, komponentplacering, varumärkestokens, responsivt beteende, navigering, sidfot, identitetspresentation, biljettresor och releaser. Hjälpcentret äger språk, kategorier, sektioner och artikelinnehåll. Studio konsumerar det innehållet genom en skyddad bro; Det skapar aldrig en andra artikelaffär.

Hjälpcenter + biljett + identitetstjänsterTillståndssäkra dataadaptrarPortal Document v2 utkastEn kompilator och rendererFörhandsgranska och publicerade Portal
En-renderer regel: Förhandsgranska och offentliga sidor använder samma dokument/kompilatoravtal. Publicering byter aldrig till en obunden mall.
Portal Studio · Workspace karta
Live Canvas-verktygDesktop · Kund
KundportalSamma strukturerade dokument som används i förhandsgranskning och offentlig rendering
Interface karta: jobbskenan, live canvas och inspektör riktar sig till samma stabila sida och nodval.
Administratör · Starta

Fullständig beredskap innan du bygger djupt

  1. Öppna Portal Studio→Börja→Beredskap.
  2. Bekräfta den kanoniska portal adressen och öppna den i en separat flik.
  3. Ställ in logotypen, webbläsareikonen, röra ikonen, social bild och temafärg.
  4. Bekräfta hjälpcenter språk; ändra språkmyndighet i Hjälpcenter, inte Studio.
  5. Konfigurera navigering och den globala företagsfoten.
  6. Välj en biljettresa och konfigurera minst ett förfrågningsformulär.
  7. Håll minst en säker inloggningsmetod aktiv och granska identitetsupptäckten.
  8. Kör kvalitet och skapa den undertecknade förhandsgranskningen handskakning.
  9. Skapa den första styrda frisättningen efter varje blockeringsobjekt är tydligt.

Beredskapsprocenten beräknas från sparade arbetsytadata och förhandsgranskningstillstånd. Välja en objektrutt direkt till sin egen panel.

Administratör · Bygg

Bygg sidor och återanvändbara sektioner

  1. Öppna Bygg → Sidor och välj en skyddad systemsida eller skapa en anpassad sida.
  2. Ange rutten, titeln, åtkomstläget och lokalbeteende. Skyddade systemvägar kan inte raderas.
  3. Öppna Komponenterfiltrera efter jobb eller mognad och placera en komponent i en kompatibel slot.
  4. Använd inspektören för innehåll, utseende, bindande, synlighet och tillgänglighet.
  5. Använd återanvändbara mönster för upprepade strukturer; håll organisationen eller varumärkesskillnaderna i varianter.
  6. Spara utkastet till och motion lastning, tomt, fel, gäst och inloggade stater i förhandsgranskningen.
Komponentbibliotek · Sanitized gränssnitt karta
KunskapssökningGA · Kunden säkerKategori rutnätGA · HjälpcenterArtikelorganGA översatt DTOBegär formGA · versioneradBiljett tidslinjeBeta varningData diagramPlanerade block publiceras
Gränssnittskarta: kategori, kompatibilitet och mognad är synliga innan placering. Planerade komponenter blockerar publikation; betakomponenter kräver explicit frisättningsbehandling.
Administratör · Brand och responsiv

Förhandsgranska riktiga resor, inte en glad skärm

  1. Välj gäststöd, inloggad biljett, faktureringsvård, organisation eller kunskapshandoff.
  2. Byt personas, organisation, roll och hjälpcenter språk.
  3. Inspektera mobil, stor mobil, surfplatta, bärbar dator, skrivbord, bred och ultrawide breakpoints.
  4. Kontrollera ärftliga, överdrivna och återställda värden; undvik onödig dubbelgång.
  5. Kör tangentbord, RTL, reducerad rörelse, lastning, tomma, otillgängliga och tillståndsstater.
  6. Använd Test Lab för tillgänglighet, nyttolast, rutt, bindande och återgivningsresultat före granskning.
En grön duk är inte ett frigörande beslut. Styrd preflight, översyn stat, kapacitet och släpp bevis bestämmer om portalen kan publicera.
Administratör · Erfarenhet

Rör ett hjälpcenter på Zendesk-nivå utan dubblett innehåll

  1. Skapa kategorier, sektioner, artiklar, översättningar, bilagor och mallar i Hjälpcenter.
  2. Möjliggöra språk där; lokaliserade sniglar, sökningar, foder, SEO och artikelkrom följer samma auktoritet.
  3. I Studio, placera kunskapssökning, kategori / resursrutnät, foder, ämnestilldelning, artikel, innehållsförteckning, feedback, relaterade och tidigare / nästa komponenter.
  4. Konfigurera presenterade, populära och senaste flöden; Använd kontextuella förslag i biljettflöden.
  5. Förhandsgranska no-results, långa artiklar, bilagor, feedback, klockor / prenumeration och biljett handoff.
  6. Verifiera rena lokalvägar, kanoniska / hreflang, strukturerade data och cache ogiltigförklaring efter publicering.
Myndighetsgräns: redigera innehåll och kundspråk i Hjälpcenter. Använd Portal Studio för att komponera hur kunskap upptäcks och visas.
Administratör · Identitet och organisationer

Konfigurera inloggning säkert

  1. Öppna Identitet & organisationer → identitet och hålla minst en inloggningsväg aktiverad.
  2. Välj standardmetod, registreringspolicy, sessionslängd, SSO-domän verkställighet och upptäckt beteende.
  3. Lägg till leverantörer med visuella routingfält: typ, domäner, prioritet, presentation, aktiverat och verifierat tillstånd. Hemligheterna stannar i identitetsdelsystemet.
  4. För SCIM, möjliggöra att tillhandahålla, kopiera den exakta arbetsytan slutpunkten och rotera token. Store engångstoken i IdP.
  5. Kartpensionskrav och organisationsmedlemskap, testa sedan skapa, uppdatera, gruppmedlemsskap och deaktivering med en testhyresgäst.
  6. Förhandsgranska gäst, kund, delegerad organisation och blockerade stater innan publicering.
Skicka aldrig en Studio session cookie för att SCIM Det är en sessionlös, arbetsyta-bunden bärare API Rotera en token efter oavsiktlig exponering.
Administratör · Biljettresor

Komponera hela supportresan

  1. Välj direktform, guide, sök-första, nav eller service-desk inmatning.
  2. Skapa ett namngivet, versionsformulär med sektioner och tillgängliga fältetiketter.
  3. Bygg visuella förhållanden, routing, SLA och godkännande steg; avancerad JSON är för granskade utvecklare förändringar endast.
  4. Konfigurera lista, detaljer, tråd, tidslinje, bilaga, godkännande, SLA och svara ytor.
  5. Test gästuppslag, inloggade förfrågningar, organisationens synlighet, uppladdningssvikt, e-postmeddelande och kunskapsbrist.
  6. Spara ett utkast; publicera först efter rutten adapter och anmälningsväg passerar förflygning.
Administratör · Granska och frigöra

Flytta genom en styrd release

Draft räddadI recensionGodkändSchemalagd eller publiceradObserverad eller rullad tillbaka
  1. Kör validering och Test Lab. Fix blockera resultat; bekräfta tillåtna varningar med sammanhanget.
  2. Lägg till release noter och begära granskning. Granskare kommenterar stabila sid/nod vägar.
  3. Godkännare inspektera diff, förhandsgranskningsresor, tillståndsförändringar och bevis.
  4. Publicera eller schemalägga genom bakgrundsarbetaren. Leaving Studio avbryter inte ett varaktigt jobb.
  5. Se framsteg, hälsa och korrelation ID. Sluta/rekord endast från arbetskontroller.
  6. Kontrollera kritiska rutter, identitet, biljetter och kunskap. Rulla tillbaka till en oföränderlig föregångare vid behov.
FörmågaSyfte
Visa / redigeraInspektera eller ändra utkast utan frisläppande myndighet.
Recension / GodkännSeparat feedback och godkännande från författarskap.
Schema / Publicera/RolbackOberoende produktionskontroller.
Identitet / SCIM Migrera / Komponenter / DiagnostikBegränsa känsliga specialister.
Administratör · Migrera och utvidga

Migrera med bevis och en väg tillbaka

  1. Välj leverantörsritningen och skapa en torr körning.
  2. Granska upptäckta inställningar, oanvända värden, innehåll räknas och visuell paritet fångar.
  3. Fullständiga säkra kartläggningar och kör den strukturerade diff.
  4. Applicera på ett utkast, försona räknas och förhandsgranska varje skyddad resa.
  5. Registrera auktoriserad acceptans; aldrig överskriva den aktuella publicerade utgåvan under importen.
  6. Publicera genom styrning och hålla migrationsrapporten, släpp ID och återgångspunkt tillsammans.
Utvecklare förlängningsguide · Arkitektur

Förlänga kontrakt, inte mallar

En säker förlängning registrerar en stabil komponenttyp och schema, förklarar behörigheter och databehov, gör genom den kanoniska kompilatorn och levererar deterministiska fixturer / tester. Sök inte godtyckliga tabeller, injicera redaktör JavaScript i den offentliga portalen, skapa en annan artikel förvaring eller kringgå utgåvan gate.

Portaldokument v2

Sidor innehåller stabila noder, slots, egenskaper, bindningar, responsiva övertoner, tillstånd och tillgänglighet metadata.

Komponentregister

Ett kontrakt matar Studio, kompilator, dokumentation, migration och löptidskontroller.

Datakälla Registry

Tillåtna, lättlästa, tillståndskodade DTO ersätter godtyckliga SQL eller dynamiska handlingar.

En renderer

Förhandsgranska och offentlig produktion dela sammanställning, sanitet, budgetar och runtime stater.

Utvecklare · Komponentkontrakt

Definiera ett komponentpaket

Använd ett lägsta namnspaced ID och semantisk version. Supply båda kompatibilitetsegenskaper som visas eftersom paketinspektion och säkerhetsvalidering utför oberoende kontroller.

{
  "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}
}

Node form

{
  "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"}
}
  • ID är fortfarande stabila över redigeringar och migrationer.
  • Fastigheter avvisar odeklarerade fält och osäkra HTML.
  • Varje databunden vy definierar laddning, tomt, tillstånd och retryable-error utgång.
  • Container komponenter namnge sina slots; blad kan inte acceptera godtyckliga barn.
  • Mark mognad ärligt: planerade block, beta varnar, GA kräver fullständiga bevis.
Utvecklare · Datakällor och bindningar

Använd tillståndssäkra DTO:er

  1. Välj ett befintligt prickat ID som tickets.mine, knowledge.featured eller customer.profile.
  2. Bind endast fält som deklarerats av dess versionerade DTO. Okända källor misslyckas med data_source.unknown.
  3. Passera den redan auktoriserade portalen kontext; acceptera aldrig arbetsyta / kundidentitet från en opålitlig egendom.
  4. Listgränser är klämda till1–100 Normalisera paginering, lokal och sökvärden.
  5. Om en ny källa är oundviklig, lägga till sin stabila definition, säker kartläggning, behörigheter, tomt beteende och förhandsgranskningsarmatur tillsammans.
{
  "success": true,
  "source": "tickets.mine",
  "contract_version": 1,
  "items": [
    {"id": 42, "number": "REQ-42", "subject": "Example", "status": "open"}
  ]
}
Datakällor är lättlästa. Mutationer kräver en explicit auktoriserad serviceåtgärd, bindning av arbetsytan, CSRF/session eller lager validering, idempotens där det behövs och ett typat felkuvert.
Utvecklare · Säkerhet

Håll dig inuti förtroendegränserna

gränsKrävt beteende
ArbetsytaLös från den betrodda värden / väg / session, sedan omfattning varje läs och skriv innan utförande.
HTML_Använd Portal sanitizer/parser-ullistan. Aldrig konkatenera opålitliga attribut, URLs, CSS eller skript.
FörhandsgranskaKräver samma ursprungskälla fönster, signerad kanalversion och nonce. Ignorera oönskade meddelanden.
IdentitetHåll hemligheter utanför dokument. SCIM är bärare-authenticated, sessionless och workpace-bundna.
PaketAvvisa traversal, absoluta vägar, länkar / specifika filer, överdimensionerade arkiv, checksum/signatur missmatchning och okända behörigheter.
FelReturnera stabil kod, säkert meddelande, retryability, remediation och korrelation ID; logga privata undantag server-side.
KunskapLäs via HelpCenterBridge. Aldrig författare eller duplicera Hjälpcenter-artiklar i en förlängning.
{
  "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"}
  }
}
Utvecklare · Paket och migration

Inspektera, installera och uppgradera atomiskt

  1. Sätt component.json vid ZIP-roten och håll varje väg i förhållande.
  2. Kör inspektion först. Installationsskyddet kapar arkiv på 500 poster och 25 MB utdragen; säkerhetsvalidering lägger till oberoende gränser.
  3. Verifiera den förväntade SHA-256 och paketsignatur i releaseprocessen.
  4. Installera till en versions katalog. mutera aldrig en installerad version på plats.
  5. Ge migreringar för att bryta schemaändringar och bevara okända kompatibilitetsfält.
  6. Öppna komponenten i ett utkast, kör varje stat/vissningsport/persona fixtur och publicera genom styrning.
  7. Rollback aktiverar den tidigare oföränderliga komponenten / dokumentfrisättningen; behåll dess reproducerbara bevis.
Utvecklare · Tester och release

Bevisa förlängningen på samma release hash

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

Källkedjor är nödvändiga, inte tillräckliga. Bifoga databas / migration, real-browser visuell, identitetsleverantör, auktorisationsisolering, tillgänglighet, prestanda, kö / cron, post / bilaga, backup / återställning och distribution bevis för samma oföränderliga release hash. Okänd krävs bevis måste misslyckas frisläppandet.

  • Enhet: schema, sanitet, DTO form, villkor, migrationer och typade misslyckanden.
  • Avtal: lastning/tomt/fel/framgång, mognad, slots, bindningar och en-återgivning paritet.
  • Webbläsare: tangentbord, fokus, semantik, RTL, zoom/reflow, reducerad rörelse och varje breakpoint.
  • Säkerhet: gränsöverskridande prober, smidda åtgärder, paketattacker, förhandsgranskningsspoofing och hemlig läckage.
  • Operationer: hållbara framsteg, lämna / återgå, stoppa / retry / återuppta, schemalägga hjärtslag och rollback.
Administratör + utvecklare · Återhämtning

Felsökning av statligt och korrelation ID

statsstatVad ska man göra
TillståndBegär den namngivna förmågan. Dold UI är bekvämlighet; backenden alltid genomdriver det.
ValideringÖppna den rapporterade sidan / nod / fältet, korrigera det och sedan köra preflight.
KonfliktLadda om den senaste revideringen, jämför ändringar och återanvända avsiktligt. Tvinga aldrig överskrivning.
Offline / uppreparHåll utkastet, återställa anslutning, försök genom åtgärden och verifiera hållbart jobbtillstånd.
Fatal / otillgängligKopiera korrelation ID och tidsstämpel för stöd. Aldrig klistra in hemligheter eller privat undantag text.
Publicera misslyckadesInspektera preflight / jobbutgång, retry endast förtrollbara stadier eller rulla tillbaka till den sista frisk utgåva.
SCIM 401/403Bekräfta endpoint/workspace, björntoken, aktiverat tillstånd och rotation; Använd aldrig en webbläsare session cookie.
Kunskap är staleVerifiera lokal / publicering i Hjälpcenter, inspektera sedan cache-invalidering och den rena lokaliserade rutten.

Denna guide är tryckklar. Använd Print → Spara som PDF För en kontrollerad offline-kopia.