Studio'nun ne sahip olduğunu bilin
Portal Studio müşteriye yüz yüzen kabuk: sayfalar, yerleştirme, marka jetleri, duyarlı davranışlar, navigasyon, ayaklama, kimlik sunumu, bilet yolculuğu ve yayınlar. Yardım Merkezi'nin kendi dillerini, kategorilerini ve makale içeriklerini tüketmektedir; Bu içeriği korumalı bir köprü aracılığıyla asla yapmaz; ikinci bir makale mağazası yaratmaz.
Binadan önce tam hazır
- Aç Portal Studio → Start → Readiness.
- Kanonik Portal adresini onaylayın ve ayrı bir sekmede açın.
- Logoyu, tarayıcı ikonunu, dokun ikonuna, sosyal görüntü ve tema rengine bakın.
- Yardım Merkezi dilleri onaylayın; Help Center'daki dil otoritesini değiştirin, Studio değil.
- Configure navigasyon ve global işletme ayağı.
- Bir bilet yolculuğu seçin ve en az bir istek formu yapılandırın.
- En az bir güvenli işaret yöntemi aktif ve yorum kimlik keşfi tutun.
- Kaliteyi çalıştırın ve imzalı ön elhake'i kurdu.
- Her blok öğenin açık olduğundan ilk yönetilen sürüm oluşturun.
Hazırlık yüzdesi, kurtarma iş alanı verileri ve önbellek durumu hesaplandı. Bir öğe rotalarını doğrudan kendi paneline seçin.
Sayfalar oluşturun ve yeniden kullanılabilir bölümler
- Aç Yap → Sayfalar Korumalı bir sistem sayfasını seçin veya özel bir sayfa oluşturun.
- Yol, başlık, erişim modu ve yerel davranış. Korumalı sistem rotaları silinemez.
- Aç Bileşenlerİş veya olgunluk tarafından filtre ve uyumlu bir slotta bir bileşen yerleştirin.
- İçerik, görünüm, bağlayıcı, görünürlük ve erişilebilirlik için denetimci kullanın.
- Tekrarlanan yapılar için yeniden kullanılabilir desenler kullanın; organizasyon veya marka farklılıkları farklı şekillerde tutun.
- Tasarı ve egzersiz yüklemesini kurtar, boş, hata, misafir ve onaylanmış devletler.
Preview real yolculukları, mutlu bir ekran değil
- Misafir desteği seçin, imzalı bilet, fatura bakımı, organizasyon veya bilgi handoff.
- Anahtar kişi, organizasyon, rol ve Merkez diline yardım edin.
- Inspect mobile, büyük mobil, tablet, dizüstü bilgisayar, masaüstü, geniş ve ultra geniş uç noktaları.
- miras alın, overridden ve reset değerleri; gereksiz kırılma noktası rasyondan kaçının.
- klavyeyi çalıştır, RTL, azaltılmış duygusal, yükleme, boş, mevcut olmayan ve izin eyaletlerini.
- Test Lab'ı erişilebilirlik için kullanın, ücret yükü, rota, bağlayıcı ve projeksiyonel bulguları incelemeden önce.
Tekrarlanan içerik olmadan Zendesk- Seviye Yardım Merkezi Operate a Zendesk i- level Help Center without duplicate content
- Kategori Oluşturun, bölümler, makaleler, çeviriler, eks ve şablonlar Yardım Merkezi Yardım.
- Orada enable diller; yerelleştirilmiş çamurlar, arama, beslemeler, SEO ve makale krom aynı otoriteyi takip eder.
- Stüdyoda, yer bilgisi arama, kategori/resource ızgaralar, beslemeler, konu askıya alındı, makale, içerik tablosu, geri bildirim, ilgili ve önceki / diğer bileşenler.
- Configure, popüler ve son beslemeler; bilet akışlarında bağlamsal öneriler kullanın.
- Önizleme sonuçları, uzun makaleler, eklentiler, geri bildirim, izleme / abonelik ve bilet teslimat.
- Temiz yerel rotaları, kanonik / hreflang, yayından sonra yapılandırılmış veriler ve önbellek geçersizliği onaylayın.
Configure sign-in güvenle
- Aç Kimlik ve örgütler → Kimlik Ve en az bir işaret-in yolunu etkinleştirin.
- Varsayılan yöntem seçin, kayıt politikası, oturum süresi, SSO-domain uygulama ve keşif davranışları.
- Görsel routing alanları ile sağlayıcıları ekleyin: tip, alanlar, öncelikler, sunumlar ve doğrulanmış devlet. Sırlar kimlik alt sistemde kalır.
- SCIM için, düzenlemeyi etkinleştirin, tam iş alanı uç noktasını kopyalayın ve token'i döndürün. IdP'de bir kez token.
- Harita iddiaları ve organizasyon üyeliği, sonra test oluşturma, güncelleme, grup üyeliği ve bir test onant ile deaktivasyonu test edin.
- Preview guest, müşteri, delegeli organizasyon ve yayından önce ülkeleri engelledi.
Boş destek yolculuğu
- Doğrudan form seçin, sihirbaz, arama-ilk, merkez veya hizmet girişi.
- Bir isim oluşturun, sürümlenen istek formu bölümler ve erişilebilir alan etiketleri ile açın.
- Görsel koşullar inşa edin, routing, SLA ve onay adımları; gelişmiş JSON sadece analiz edilen geliştirici değişiklikler içindir.
- Configure list, detay, thread, zaman çizelgesi, ek, onay, SLA ve cevap yüzeyler.
- Misafir gözlüğü, imzalanmış istekler, organizasyon görünürlüğü, başarısızlık yükleme, e-posta bildirim ve bilgi defleksiyon.
- Bir taslaktan tasarruf edin; sadece rota adaptörü ve bildirim yolu ön ışıktan sonra yayınlayın.
Bir yönetilen serbest bırakılması yoluyla hareket edin
- Geçerlilik ve Test Lab. bulguları engelleme; bağlam ile uyarıları kabul edin.
- Yayın notları ekleyin ve inceleme talep edin. Rezersiz sayfa / düğüm yolları hakkında yorum yapın.
- Approvers diff, önizleme yolculukları, izin değişiklikleri ve kanıtları inceler.
- Arka plan çalışanı aracılığıyla ortaya çıkmak veya program. Ölü bir Stüdyo kalıcı bir iş iptal etmiyor.
- İlerlemeyi izleyin, sağlık ve korelasyon ID. Stop/retry sadece iş kontrollerinden durdurun.
- Kritik rotalar, kimlik, biletler ve bilgi. Roll gerektiğinde bir hayal için geri dönüşümlü olarak geri döner.
| Yetenekli | Amaç |
|---|---|
| Görüntüle / Düzenle | Müfettiş veya değişim taslakları serbest bırakma yetkisi olmadan değiştirir. |
| İnceleme / Approve | Yazarlıktan ayrı geri bildirimler ve onay. |
| Takvim / Yayınla / Geri Al | Bağımsız üretim kontrolleri. |
| Kimlik / SCIM / Migrate / Bileşenler / Tanılar | Hassas uzman operasyonları. |
Migrate kanıt ve bir yol ile geri
- Sağlayıcı mavi baskıyı seçin ve kuru bir iş oluşturun.
- Yapılanma, keşfedilmemiş değerler, içerik sayıları ve görsel parite yakalamaları.
- Güvenli haritalar tamamlayın ve yapılandırılmış diff'ı yeniden çalıştırın.
- Bir taslak, uzlaşıcı sayar ve her korumalı yolculuğu önle.
- Kayıt yetkili kabul; asla ithalat sırasında yayınlanan sürümü yazma.
- Yönetişim yoluyla ortaya çıkmak ve göç raporunu tutmak, kimlik serbest bırakmak ve birlikte geri dönüş noktası.
Sözleşmeleri uzatmayın, şablonlar değil
Güvenli bir uzatma, istikrarlı bir bileşen türü ve şema kaydeder, izinler ve veri ihtiyaçları, kanonik derleyici ile verir ve malzeme deterministic fikstürleri / test eder. Keyif tabloları sorgulayamaz, editör JavaScript into the public Portal, create another article repository, or throws the release door.
Portal Doküman v2
Sayfalar stabil düğümler, slotlar, özellikler, bağlayıcılar, aşırı tepki verenler, koşullar ve erişilebilir metadata içerir.
Bileşen Kayıt
Bir sözleşme, Studio'yu besler, derleyici, belge, göç ve olgun çekleri kullanır.
Data Source Record Kayıt
İzin verilen, sadece, izinli DTO'lar keyfi SQL veya dinamik eylemleri değiştirir.
Bir
Preview ve halk çıkışı derleme, sanitizasyon, bütçeler ve koşu zaman eyaletlerini paylaşıyor.
Bir bileşen paketi tanımlamak
Daha düşük bir isim alanılanmış kimlik ve semantik versiyon kullanın. Paket inceleme ve güvenlik doğrulama bağımsız kontroller gerçekleştirir.
{
"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 şekli
{
"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'ler düzenleme ve göçlerle istikrarlı kalır.
- Özellikler, alanları ve güvenli olmayan HTML'ı reddediyor.
- Her veriye dayalı görüş yükleme, boş, izin ve yeniden uygulanabilir- terörizm çıktısını tanımlar.
- Konteyner bileşenleri yuvalarını adlandırıyor; keyfi çocukları kabul edemiyor.
- Mark olgunluk dürüstçe: planlanan bloklar, beta uyarır, GA tam kanıt gerektirir.
İzinli DTO'lar kullanın
- Mevcut bir dotted ID'yi seçin gibi
tickets.mine,knowledge.featuredveyacustomer.profile. - Bind sadece kendi sürüm DTO tarafından ilan edilen alanlar. Bilinmeyen kaynaklar başarısız
data_source.unknown. - Zaten yetkili bir Portal bağlamını geç; hiçbir zaman güvenilmeyen bir mülkten iş alanı/müşteri kimliğini kabul et.
- Liste sınırları 1-100. Normalize paginasyon, yerel ve arama değerlerine bağlanır.
- Yeni bir kaynak kaçınılmazsa, istikrarlı tanımını ekleyin, güvenli haritalama, izinler, boş davranışlar ve birlikte ön segmenti ekleyin.
{
"success": true,
"source": "tickets.mine",
"contract_version": 1,
"items": [
{"id": 42, "number": "REQ-42", "subject": "Example", "status": "open"}
]
}
Güven sınırları içinde kalın
| Sınır | Gerekli davranış |
|---|---|
| İş Alanı | Güvenilir ev sahibi/route /session'tan geri alın, sonra her okuma ve yürütmeden önce yaz. |
| HTML | Use the Portal sanitizer/parser allowlist. Never concatenate untrusted attributes, URLs, CSS or script. |
| Öfke | Aynı-origin kaynak penceresi, kanal versiyonunu ve nonce imzalamak. Boş olmayan mesajlar görmezden gelmek. |
| Kimlik Kimliği | Belgelerin dışında sırları tutun. SCIM is ayıer-authenticated, sessionless and workspace-bound. |
| Paketler | Reject traversal, mutlak yollar, bağlantılar / özel dosyalar, aşırı arşivler, çeklerum/signature yanlış eşleştirme ve bilinmeyen izinler. |
| Hatalar | Kalıcı stabil kod, güvenli mesaj, yeniden deneme, remediasyon ve korelasyon ID; özel istisnalar sunucu-side. |
| Bilgi Bilgisi | YardımCenterBridge ile okuyun. Asla yazar veya tekrarlanan Yardım Merkezi makalelerini bir uzatmada okuyun. |
{
"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"}
}
}
Inspect, atomik olarak yükleme ve yükseltme
- - Ver.
component.jsonZIP kökünde ve her yolu göreceli tut. - Run inspection first. The installer caps archives at 500 entries and 25 MB extracted; security validation adds independent limits.
- SHA-256 ve paket imzasını serbest bırakma sürecinde onaylayın.
- Bir sürüme ayarlayın. Asla yerdeki yüklü bir versiyona girmeyin.
- Sistem geçişleri şema değişiklikleri kırmak ve bilinmeyen uyumluluk alanları korumak için sağlar.
- Bir taslaktaki bileşeni açın, her eyalet/görev / kişi odası fikstürü çalıştırın ve yönetişim yoluyla yayınlayın.
- Rollback, önceden düşünülemez bileşeni / kesinti serbest bırakılmasını etkinleştirir; reroditebilite kanıtlarını korur.
Aynı sürümdeki uzantıları kanıtlayın 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
Kaynak kapıları gerekli değildir, yeterli değil. Veritabanı / kesinti, gerçek tarayıcı görsel, kimlik-provider, yetkilendirme, erişilebilirlik, performans, kuyruk/kron, posta / ulaşılamaz sürüme dair kanıtları aynı hayal kırıklığına uğratmalıdır.
- Birim: şema, sanitizasyon, DTO şekli, koşullar, göçler ve tip başarısızlıklar.
- Sözleşme: yükleme/boş / terörizm / başarı, olgunluk, slotlar, bağlayıcılar ve bir-renderer parite.
- Tarayıcı: klavye, odak, semantics, RTL, zoom / akış, azalan hareket ve her uç noktası.
- Güvenlik: çapraz çalışma alanı araştırmaları, genişletilmiş eylemler, paket saldırıları, önizleme spoofing ve gizli sızıntı.
- Operasyonlar: dayanıklı ilerleme, terk / geri dönüş, stop/retry/resume, zamanlamacı kalp ve rollback.
Devlet ve korelasyon ID tarafından sorun
| Devlet Devleti | Ne yapmalı |
|---|---|
| İzin | Adı yeteneği talep edin. Hidden UI rahatlatır; arka uç her zaman onu uygular. |
| Geçerlilik | Raporlanmış sayfa /node/field açın, doğrulayın, sonra ön ışık yeniden işliyor. |
| Çatışma | En son revizyonu yeniden yükleyin, değişiklikleri karşılaştırın ve kasıtlı olarak tekrar uygulayın. Asla yazmayı zorlamaz. |
| Offline / yenidentryable | Tasarıyı tutun, bağlantı geri yükleme, eylem yoluyla yeniden deneme ve kalıcı iş durumunu doğrulama. |
| Fatal / Yok | Destek için korelasyon ID ve zaman notampı kopyalayın. Asla sırları veya özel istisna metnini yapıştırın. |
| Publish başarısız oldu | Inspect preflight /job çıktı, yeniden deneme sadece tekrarlanabilir aşamalar veya son sağlıklı salıverme geri dön. |
| SCIM 401/403 | Endpoint/workspace, ayıer token, etkinleştirilen devlet ve rotasyon; asla bir tarayıcı seansı kurabiye kullanma. |
| Bilgi dur | Yardım Merkezi'nde yerel/halkalılaşmayı onaylayın, sonra önbellek geçersizliği ve temiz yerel rotayı kontrol edin. |
Bu kılavuz baskıya hazır. Yazdır kullanın → Kontrollü çevrimdışı kopya için PDF olarak tasarruf edin.