انتقل إلى المحتوى الرئيسي

الإعدادات (Settings)

مجلد settings/ يخزن ملفات JSON لتكوين القالب التي تتحكم في القيم الافتراضية والمخطط وترتيب القوالب.

الملفات في هذا المجلد

  • settings-schema.json: يحدد الحقول المتاحة المنظمة في مجموعات مع تسميات متعددة اللغات.
  • settings-data.json: يحتفظ بالقيم الفعلية لكل حقل.
  • templates-settings.json: يحدد ترتيب العرض للقوالب.

settings-schema.json

الإعدادات منظمة في مجموعات مع تسميات متعددة اللغات. كل مجموعة تحتوي على إعدادات متعددة:

[
{
"label": {
"ar": "الألوان",
"en": "Colors"
},
"settings": {
"mainColor": {
"type": "color",
"label": "اللون الرئيسي",
"default": "#003033"
},
"secondaryColor": {
"type": "color",
"label": "اللون الثانوي",
"default": "#f5f5f5"
}
}
},
{
"label": {
"ar": "شريط الإعلانات",
"en": "Announcement Bar"
},
"settings": {
"announcementEnabled": {
"type": "boolean",
"label": "تفعيل شريط الإعلانات",
"default": true
},
"announcementText": {
"type": "string",
"label": "نص الإعلان",
"default": "شحن مجاني للطلبات فوق 50$"
}
}
}
]

أنواع الإعدادات المتاحة

النوعالوصفمثال
stringإدخال نص سطر واحدالعناوين، الروابط
booleanمفتاح تبديلتفعيل/تعطيل الميزات
numberإدخال رقمي (يدعم min/max)الأعداد، الأحجام
colorمنتقي الألوانألوان القالب
cssمحرر كود CSSCSS مخصص
javascriptمحرر كود JavaScriptسكريبتات مخصصة
mediaمنتقي وسائط/صورالشعار، الصور
productsمنتقي منتجاتالمنتجات المميزة
menuمنتقي قوائمقوائم التنقل

settings-data.json

يخزن القيم الفعلية لكل مفتاح إعداد:

{
"mainColor": "#ff5733",
"announcementEnabled": true,
"announcementText": "مرحباً بكم في متجرنا!"
}

templates-settings.json

يحدد ترتيب العرض للقوالب في التخطيط:

{
"templates_order": ["header", "global", "main", "footer"]
}

استخدام الإعدادات في القوالب

الوصول لقيم الإعدادات في قوالب Nunjucks الخاصة بك:

<body style="--main-color: {{ settings.mainColor }};">
{% if settings.announcementEnabled %}
<div class="announcement">{{ settings.announcementText }}</div>
{% endif %}
</body>