تخطَّ إلى المحتوى
Delivery API
قبل أن تخطط اعتمادًا على أي ميزة، اطلع على حالة القدرات.

الأدلةالمحتوى

المكوّنات والسجل

كيف تصبح مكوّنات موقعك أقسامًا يستخدمها المحررون، وكيف يُبقيها Atlas متزامنة مع شيفرتك المنشورة.

تُرجمت هذه الصفحة من الإنجليزية. وفي حال وجود أي اختلاف، تسري النسخة الإنجليزية. اقرأ بالإنجليزية

لا يرسل Atlas مكوّنات إلى موقعك أبدًا. تبقى مكوّناتك في مستودعك. ويخبر عقد الموقع Atlas بالمكوّنات الموجودة وبالحقول التي يجوز للمحررين ملؤها.

لكل مكوّن في العقد:

  • معرّف مؤهّل، مثل acme.home.hero، وإصدار؛
  • نوع: section أو block أو layout؛
  • حقول مضبوطة الأنواع، مثل heading (نص، مطلوب، حتى 80 حرفًا)، وimage (أصل وسائط)، وcta (رابط).

يرى المحررون نموذجًا مبنيًا من هذه الحقول. ولا يستطيعون إضافة حقول أو لصق HTML أو تغيير ترميزك.

احتفظ في شيفرتك بسجل صغير يربط كل معرّف مكوّن بمكوّن React الذي يعرضه:

atlas/sections.tsx
import { Hero } from '@/components/hero';
import { FeatureGrid } from '@/components/feature-grid';
import type { AtlasSection } from '@/lib/atlas';
const registry = {
'acme.home.hero': Hero,
'acme.home.features': FeatureGrid,
} as const;
export function renderSection(
section: AtlasSection,
assets: Record<string, { url: string; alt?: string }>,
) {
const Component = registry[section.component.id as keyof typeof registry];
if (!Component) return null; // unknown component: skip it, never guess
return <Component key={section.id} {...section.props} assets={assets} />;
}

تحقق من الخصائص التي يستقبلها مكوّنك بالطريقة نفسها التي تتحقق بها من أي مدخلات خارجية.

إبقاء الشيفرة والمحتوى متزامنين

Section titled “إبقاء الشيفرة والمحتوى متزامنين”

يبلّغ موقعك عن المكوّنات التي بُني بها عند بدء تشغيله (POST /deployments). يقارن Studio ذلك بالعقد الفعّال ويعرض إحدى الحالات التالية:

الحالة المعنى
In sync البناء المنشور يعرض العقد الفعّال
Missing components يستخدم العقد مكوّنات ليست في هذا البناء. انشر الشيفرة أولًا
Different contract بُني هذا البناء لإصدار آخر من العقد
Unknown contract لم يرَ Atlas من قبل العقد الذي يبلّغ عنه هذا البناء
No contract لا يوجد عقد فعّال بعد

لا يمكن اعتماد إصدار إنتاج بينما الموقع غير متزامن. وهذا يمنع المحررين من استخدام مكوّن غير موجود بعد في الموقع الحي.

  1. ابنِ المكوّن واختبره في شيفرة موقعك.
  2. أضفه إلى حزمة العقد مع حقوله، وإلى أنواع الصفحات التي يجوز للمحررين إدراجه فيها.
  3. تحقق من العقد واقترحه. يفعّله مسؤول الموقع.
  4. انشر الموقع. يعرض Studio In sync.
  5. يستطيع المحررون الآن استخدامه.