استخدم مساعدك المفضل للملخص واستخدم هذه الصفحة والموفر AI الذي تريده
هذه الوثيقة غير محدثة، تم تحديث النسخة الأساسية في 29 أغسطس 2026.
الانتقال إلى الوثيقة الإنجليزيةتاريخ الإصدارات
- "نقل قسم «التزامن الحي» إلى صفحة مستقلة (live-sync.md)، مع الإبقاء هنا على مقدمة قصيرة ورابط"v9.0.08/7/2026
- "إضافة قسم الاستضافة الذاتية"v9.0.030/6/2026
- "إضافة توثيق المزامنة الحية"v6.0.122/9/2025
- "استبدال حقل `hotReload` بـ `liveSync`"v6.0.04/9/2025
- "بدء السجل"v5.5.1029/6/2025
تمت ترجمة محتوى هذه الصفحة باستخدام الذكاء الاصطناعي.
اعرض آخر نسخة المحتوى الأصلي باللغة الإنكليزيةإذا كان لديك فكرة لتحسين هذه الوثيقة، فلا تتردد في المساهمة من خلال تقديم طلب سحب على GitHub.
رابط GitHub للتوثيقنسخ الـ Markdown من المستند إلى الحافظة
توثيق نظام إدارة المحتوى Intlayer (CMS)
نظام إدارة المحتوى Intlayer هو تطبيق يسمح لك بإخراج محتواك من مشروع Intlayer.
لهذا، قدم Intlayer مفهوم "القواميس البعيدة".

جدول المحتويات
فهم القواميس البعيدة
يفرق Intlayer بين القواميس "المحلية" و"البعيدة".
القاموس "المحلي" هو قاموس يتم إعلانه داخل مشروع Intlayer الخاص بك. مثل ملف إعلان زر، أو شريط التنقل الخاص بك. إخراج المحتوى الخاص بك لا معنى له في هذه الحالة لأن هذا المحتوى من المفترض ألا يتغير كثيرًا.
القاموس "البعيد" هو قاموس يتم إدارته من خلال نظام إدارة المحتوى Intlayer CMS. قد يكون مفيدًا للسماح لفريقك بإدارة المحتوى مباشرة على موقعك الإلكتروني، ويهدف أيضًا إلى استخدام ميزات اختبار A/B والتحسين التلقائي لمحركات البحث (SEO).
المحرر المرئي مقابل نظام إدارة المحتوى (CMS)
محرر Intlayer Visual هو أداة تتيح لك إدارة المحتوى الخاص بك في محرر مرئي للقواميس المحلية. بمجرد إجراء تغيير، سيتم استبدال المحتوى في قاعدة الشيفرة. هذا يعني أن التطبيق سيتم إعادة بنائه وستتم إعادة تحميل الصفحة لعرض المحتوى الجديد.
على النقيض من ذلك، فإن نظام إدارة المحتوى Intlayer CMS هو أداة تتيح لك إدارة المحتوى الخاص بك في محرر مرئي للقواميس البعيدة. بمجرد إجراء تغيير، لن يؤثر المحتوى على قاعدة الشيفرة الخاصة بك. وسيعرض الموقع تلقائيًا المحتوى المُعدل.
التكامل
لمزيد من التفاصيل حول كيفية تثبيت الحزمة، راجع القسم ذي الصلة أدناه:
التكامل مع Next.js
للتكامل مع Next.js، راجع دليل الإعداد.
التكامل مع Create React App
للتكامل مع Create React App، راجع دليل الإعداد.
التكامل مع Vite + React
للتكامل مع Vite + React، راجع دليل الإعداد.
التهيئة
قم بتشغيل الأمر التالي لتسجيل الدخول إلى Intlayer CMS:
نسخ الكود إلى الحافظة
سيؤدي هذا إلى فتح المتصفح الافتراضي الخاص بك لإكمال عملية المصادقة والحصول على بيانات الاعتماد اللازمة (معرف العميل وسر العميل) لاستخدام خدمات Intlayer.
في ملف تهيئة Intlayer الخاص بك، يمكنك تخصيص إعدادات نظام إدارة المحتوى:
نسخ الكود إلى الحافظة
import type { IntlayerConfig } from "intlayer";
const config: IntlayerConfig = {
// ... إعدادات التهيئة الأخرى
editor: {
/**
* مطلوب
*
* عنوان URL الخاص بالتطبيق.
* هذا هو العنوان الذي يستهدفه المحرر المرئي.
*/
applicationURL: process.env.INTLAYER_APPLICATION_URL,
/**
* مطلوب
*
* معرف العميل والسر السري للعميل مطلوبان لتمكين المحرر.
* يسمحان بتحديد هوية المستخدم الذي يقوم بتحرير المحتوى.
* يمكن الحصول عليهما بإنشاء عميل جديد في لوحة تحكم Intlayer - المشاريع (https://app.intlayer.org/projects).
* clientId: process.env.INTLAYER_CLIENT_ID,
* clientSecret: process.env.INTLAYER_CLIENT_SECRET,
*/
clientId: process.env.INTLAYER_CLIENT_ID,
clientSecret: process.env.INTLAYER_CLIENT_SECRET,
/**
* اختياري
*
* في حال كنت تستضيف نظام إدارة المحتوى Intlayer بنفسك، يمكنك تعيين عنوان URL الخاص بنظام إدارة المحتوى.
*
* عنوان URL الخاص بنظام إدارة المحتوى Intlayer.
* بشكل افتراضي، يتم تعيينه إلى https://intlayer.org
*/
cmsURL: process.env.INTLAYER_CMS_URL,
/**
* اختياري
*
* في حال كنت تستضيف نظام إدارة المحتوى Intlayer بنفسك، يمكنك تعيين عنوان URL الخاص بالواجهة الخلفية.
*
* عنوان URL الخاص بنظام إدارة المحتوى Intlayer.
* بشكل افتراضي، يتم تعيينه إلى https://back.intlayer.org
*/
backendURL: process.env.INTLAYER_BACKEND_URL,
},
};
export default config;
إذا لم يكن لديك معرف عميل وسر عميل، يمكنك الحصول عليهما بإنشاء عميل جديد في لوحة تحكم Intlayer - المشاريع.
لرؤية جميع المعلمات المتاحة، راجع توثيق التهيئة.
استخدام نظام إدارة المحتوى
دفع التهيئة الخاصة بك
لتكوين نظام إدارة محتوى Intlayer، يمكنك استخدام أوامر intlayer CLI.
نسخ الكود إلى الحافظة
إذا كنت تستخدم متغيرات البيئة في ملف التهيئةintlayer.config.ts، يمكنك تحديد البيئة المطلوبة باستخدام الوسيطة--env:
نسخ الكود إلى الحافظة
يقوم هذا الأمر برفع تهيئتك إلى نظام إدارة محتوى Intlayer.
دفع قاموس
لتحويل قواميس اللغة المحلية الخاصة بك إلى قاموس بعيد، يمكنك استخدام أوامر intlayer CLI.
نسخ الكود إلى الحافظة
إذا كنت تستخدم متغيرات البيئة في ملف التهيئةintlayer.config.tsالخاص بك، يمكنك تحديد البيئة المطلوبة باستخدام الوسيطة--env:
نسخ الكود إلى الحافظة
يقوم هذا الأمر برفع قواميس المحتوى الأولية الخاصة بك، مما يجعلها متاحة للتحميل والتحرير غير المتزامن عبر منصة Intlayer.
تحرير القاموس
بعد ذلك، ستتمكن من رؤية وإدارة قاموسك في نظام إدارة محتوى Intlayer.
الوصول البرمجي باستخدام SDK @intlayer/api
بالإضافة إلى واجهة سطر الأوامر والمحرر المرئي، يأتي Intlayer مع SDK مكتوب بشكل آمن من حيث النوع في حزمة @intlayer/api. يتيح لك التعامل مع نظام إدارة المحتوى كـ قاعدة بيانات محتوى بدون رأس: يمكنك جلب المشاريع وجلب القواميس، وتحديثها مباشرة من تطبيقك الخاص أو البرامج النصية أو خط أنابيب CI.
يتعامل SDK مع المصادقة من أجلك. طالما أن clientId و clientSecret متاحة (في تكوين Intlayer أو البيئة)، فإنه يحصل على رمز OAuth2 للوصول وينعشه تلقائياً ويوقع كل طلب.
التثبيت
نسخ الكود إلى الحافظة
كيفية عملها: المصادق + نقاط النهاية
تم تقسيم SDK إلى استيرادين منفصلين عن قصد، للحفاظ على حجم حزمتك صغيرًا:
createIntlayerCMS— ينشئ مصادقًا خفيف الوزن. يحمل فقط بيانات الاعتماد والرمز المميز للوصول المُدار؛ لا يعرف شيئًا عن أي مجال محدد.dictionaryEndpoint,projectEndpoint, … — محررات نقاط النهاية لكل مجال، يتم استيراد كل منها من مسارها الخاص (@intlayer/api/dictionary,@intlayer/api/project, …). تمرر المصادق إلى نقطة النهاية التي تحتاجها.
لأن كل نقطة نهاية يتم استيرادها بشكل منفصل، تتضمن حزمتك فقط المجالات التي تستخدمها فعليًا — استيراد dictionaryEndpoint لا يسحب أبدًا المشروع أو الذكاء الاصطناعي أو أي عميل مجال آخر.
نسخ الكود إلى الحافظة
WARNING بيانات اعتماد CMS (clientId/clientSecret) تمنح حق الوصول للكتابة إلى محتواك. لا تنشئ المصادق أبدًا إلا على الجانب الخادم (إجراءات الخادم، معالجات المسارات، البرامج النصية، CI). لا تستورده أبدًا في الكود من جانب العميل أو تعرض بيانات اعتمادك للمتصفح.
إذا فضلت عدم الاعتماد على تكوين وقت البناء، مرر بيانات الاعتماد بشكل صريح:
نسخ الكود إلى الحافظة
احصل على بيانات اعتمادك بإنشاء مفتاح وصول جديد في لوحة معلومات Intlayer - المشاريع.
جلب المشاريع
نسخ الكود إلى الحافظة
جلب القواميیس
نسخ الكود إلى الحافظة
دفع وتحديث القواميس
استخدم نظام إدارة المحتوى (CMS) كقاعدة بيانات لكتابة المحتوى مرة أخرى:
نسخ الكود إلى الحافظة
نصيحة: أعد استخدام نقطة النهاية المرتبطة لتجنب تكرار نفسك:
typescriptنسخ الكودنسخ الكود إلى الحافظة
استخراج طريقة واحدة
كل طريقة endpoint مصادق عليها بالفعل وقائمة بذاتها (تحمل معالجة الرمز الخاص بها)، لذا يمكنك استخراج واحدة وتمريرها حوله — على سبيل المثال لحقنها كتبعية:
نسخ الكود إلى الحافظة
التزامن الحي
يتيح التزامن الحي لتطبيقك عكس تغييرات محتوى نظام إدارة المحتوى أثناء وقت التشغيل. لا حاجة لإعادة البناء أو إعادة النشر. عند التمكين، يتم بث التحديثات إلى خادم التزامن الحي الذي يقوم بتحديث القواميس التي يقرأها تطبيقك.
للحصول على دليل الإعداد الكامل (التفعيل، تشغيل خادم Live Sync، سير عمل التطوير المحلي، والقيود)، راجع توثيق Live Sync.
الاستضافة الذاتية (Self-Hosting)
يمكن تشغيل Intlayer بالكامل على بنيتك التحتية الخاصة. يؤدي أمر واحد إلى تشغيل المكدس الكامل (لوحة التحكم، وواجهة برمجة التطبيقات، وقاعدة البيانات، وتخزين الكائنات، والبريد الإلكتروني) باستخدام Docker Compose:
نسخ الكود إلى الحافظة
للاطلاع على دليل الإعداد الكامل، ومرجع متغيرات البيئة، وتعليمات الترقية، وإجراءات النسخ الاحتياطي والاستعادة، راجع دليل الاستضافة الذاتية.
تصحيح الأخطاء
إذا واجهت أي مشاكل مع نظام إدارة المحتوى (CMS)، تحقق من الأمور التالية:
التطبيق يعمل.
تم إعداد تكوين
المحرربشكل صحيح في ملف تكوين Intlayer الخاص بك.- الحقول المطلوبة:
- يجب أن يتطابق عنوان URL الخاص بالتطبيق مع العنوان الذي قمت بتعيينه في تكوين المحرر (
applicationURL). - عنوان URL الخاص بنظام إدارة المحتوى (CMS)
- يجب أن يتطابق عنوان URL الخاص بالتطبيق مع العنوان الذي قمت بتعيينه في تكوين المحرر (
- الحقول المطلوبة:
تأكد من أن تكوين المشروع تم دفعه إلى نظام إدارة محتوى Intlayer.
يستخدم المحرر المرئي إطار iframe لعرض موقعك الإلكتروني. تأكد من أن سياسة أمان المحتوى (CSP) لموقعك تسمح بعنوان URL الخاص بنظام إدارة المحتوى كـ
frame-ancestors('https://app.intlayer.org' بشكل افتراضي). تحقق من وحدة تحكم المحرر لأي أخطاء.
الأسئلة الشائعة
يعدل المحرر المرئي ملفات القواميس المحلية في قاعدة التعليمات البرمجية الخاصة بك. يدير نظام CMS المحتوى عن بُعد على الخادم، مما يتيح تحديثات النصوص دون إعادة نشر كود التطبيق.
أقل بكثير من الإعدادات القائمة على فضاءات الأسماء، لأن الصفحة لا تُحمّل أبدًا كتالوجًا لا تعرضه. يُحل المحتوى المعروض على الخادم مباشرة على الخادم، ويستبدل مترجم وقت البناء استدعاءات useIntlayer بإدخالات القاموس الدقيقة التي يستخدمها المكون، لذلك يتم التخلص من المفاتيح واللغات غير المستخدمة. تقسم القواميس الديناميكية الباقي حسب اللغة. مقارنة بالبدائل التقليدية، يقلل Intlayer حجم الحزمة والصفحة بنسبة تصل إلى 50%. انظر تحسين الحزم و المقارنة المعيارية.
نعم، وبطريقتين. يمكنك ترحيل المحتوى تدريجيًا باستخدام دليل ترحيل i18next أو دليل ترحيل next-intl. أو يمكنك الاحتفاظ بواجهة برمجة التطبيقات الحالية بالكامل: تكشف محولات التوافق نفس واجهات i18next و react-i18next و next-intl و next-i18next و react-intl و use-intl و vue-i18n و Lingui، ولكنها مدعومة بقواميس Intlayer، بحيث تتغير الاستيرادات فقط بينما يظل كود المكون كما هو.
نعم. تحافظ مكونة مزامنة JSON على ملفات /messages/{locale}/{namespace}.json الخاصة بك كمصدر الحقيقة وتُنشئ قواميس Intlayer منها، في كلا الاتجاهين. وتقوم مكونة مزامنة PO بنفس الشيء لكتالوجات gettext، وتسمح لك الملفات المقسمة حسب اللغة بتقسيم المحتوى حسب اللغة بدلاً من تجميع كل اللغات في ملف واحد.
لا. قم بتشغيل npx intlayer extract وسيقرأ Intlayer ملفات المصدر الخاصة بك، ويسحب السلاسل النصية الموجهة للمستخدم ويكتب ملف .content بجانب كل منها، بحيث تراجع diff بدلاً من نسخ السلاسل إلى كتالوج يدويًا. راجع أمر extract.
لأتمتة كاملة، يقوم Intlayer Compiler بالشيء نفسه في وقت البناء على كود JSX و TSX و Vue و Svelte، منشئًا القواميس عند كل تغيير دون الحاجة إلى إدارة المفاتيح يدويًا.
خمس أدوات، كلها اختيارية:
- امتداد VS Code: الانتقال من مفتاح
useIntlayerإلى ملف المحتوى المصرح به، استخراج المحتوى من المكون، وتشغيل build و fill و test و push و pull من لوحة الأوامر أو علامة تبويب Intlayer. - خادم LSP: نفس التجربة في أي محرر يدعم LSP، مع الانتقال إلى التعريف وعروض القيمة المترجمة عند التمرير والإكمال التلقائي للمفاتيح. يدعم أيضًا استدعاءات
i18nextوreact-i18nextوnext-intlوuse-intl. - خادم MCP: يكشف وثائق Intlayer و CLI إلى Cursor و VS Code و Claude Desktop و Claude Code و ChatGPT.
- Agent skills: مهارات مخصصة مثل
intlayer-configوintlayer-cliوintlayer-content. - ESLint plugin: قاعدة
no-raw-textترصد النصوص المكتوبة مباشرة بدون تدويل.
