دليل نظام دروب

الإصدار الخاص بالمعارض (تاجر واحد)

Laravel 12 / PHP 8.3
المرجع الشامل للإدارة والتشغيل

وثائق ونظام دروب الاحترافي

هذا الدليل مخصص لأصحاب معارض السيارات. يشرح بالتفصيل كيفية إعداد النظام على الاستضافة، إدارة مخزون السيارات القوي، وضبط إعدادات الموقع لتقديم تجربة تصفح فاخرة لعملائك.

🚗

1. مقدمة والنطاق

دروب منصة عربية لإعلانات السيارات تُشغّل على استضافتك الخاصة (Self-Hosted)، مناسبة للمعارض والأسواق المحلية التي تحتاج موقعاً احترافياً مع لوحة تحكم كاملة لإدارة الإعلانات والبيانات المرجعية. الهدف: أن يجد العميل السيارة المناسبة بسرعة عبر تجربة بحث واضحة، وأن تتمكن الإدارة من إضافة وإدارة السيارات والمحتوى بدون تعقيد.

2. أبرز الميزات

  • إدارة مركزية للمخزون: التحكم المطلق من قبل الإدارة في إضافة إعلانات السيارات، التحكم بظهورها، وتصنيفاتها.
  • قواعد بيانات مرجعية قابلة للتخصيص: بناء القوائم الأساسية لتوحيد عملية الإدخال (أنواع الهيكل، أنواع الدفع، ناقل الحركة، الماركات والموديلات).
  • حسابات العملاء للخدمات المساندة: يمكن للعملاء التسجيل فقط لغرض حفظ السيارات في قائمة المفضلة (Wishlist) أو ترك التقييمات.
  • أمان وحماية عالية: منع التلاعب عبر نظام "الوسائط" Middleware، فلترة المدخلات، وتشفير البيانات بواسطة Laravel.

3. البنية التقنية

التقنية / المكون الإصدار / التفاصيل
إطار العمل الأساسي (Backend) Laravel 12 / PHP 8.3
قاعدة البيانات MySQL 8.0+ / MariaDB 10.4+
إدارة الواجهات (Frontend) Blade Templates, Bootstrap/Tailwind (RTL Custom), Select2
الجلسات والتخزين المؤقت قواعد البيانات (Database Sessions & Cache) لموثوقية عالية
الحماية من الثغرات Laravel Purifier (XSS), CSRF Tokens, Secure App Key

4. التنصيب والإعداد

كيفية إطلاق النظام على استضافتك الحية بخطوات مرتبة.

4.1 متطلبات السيرفر (Server Requirements)

  • نظام التشغيل: يفضل Linux (Ubuntu / CentOS) للحصول على أفضل استقرار.
  • إصدار PHP 8.3 كحد أدنى. (لا يُنصح بالإصدارات الأقدم لدواعي الأمان والسرعة).
  • قواعد بيانات: MySQL 8.0+ أو MariaDB 10.4+.
  • خادم ويب: Apache مع تفعيل mod_rewrite، أو Nginx.
  • تفعيل امتدادات (Extensions) الـ PHP التالية: pdo, mbstring, openssl, tokenizer, xml, ctype, json, bcmath, fileinfo, curl, gd/imagick

4.2 تجهيز قاعدة البيانات (Database Setup)

قبل بدء التثبيت، يجب إنشاء قاعدة بيانات فارغة لتخزين بيانات النظام.

  1. سجل الدخول إلى لوحة تحكم الاستضافة الخاصة بك (مثال: cPanel و Plesk).
  2. انتقل إلى قسم MySQL Databases (قواعد بيانات MySQL).
  3. أنشئ قاعدة بيانات جديدة بترميز يدعم اللغة العربية (يُنصح بـ utf8mb4_unicode_ci)، ولتكن باسم مثلاً dorob_db.
  4. أنشئ مستخدماً جديداً (MySQL User) وعيّن له كلمة مرور قوية جداً.
  5. اربط المستخدم الجديد بقاعدة البيانات التي أنشأتها للتو، وتأكد من منحه كافة الصلاحيات (All Privileges).
  6. احتفظ باسم قاعدة البيانات، واسم المستخدم، وكلمة المرور في ملف نصي، ستحتاجها قريباً في معالج التثبيت.

4.3 رفع الملفات (Uploading Files)

  1. من خلال لوحة تحكم الاستضافة، افتح مدير الملفات (File Manager) أو استخدم برنامج FTP مثل FileZilla.
  2. قم برفع ملف dorob.zip المرفق مع المنتج إلى المسار المخصص لموقعك (غالباً ما يكون المجلد public_html).
  3. بعد الانتهاء من الرفع، انقر بزر الماوس الأيمن على الملف واختر استخراج (Extract) لفك الضغط عن جميع ملفات النظام بداخل المجلد.
  4. اختياري: بعد فك الضغط والتأكد من وجود الكود كاملًا، يمكنك حذف الملف المضغوط dorob.zip لتوفير المساحة.

4.4 توجيه الدومين (Document Root Mapping)

⚠️
خطوة أمنية هامة جداً! تطبيقات Laravel مصممة للحماية، لذا يجب عدم توجيه الدومين الرئيسي إلى مجلد فك الضغط مباشرة، بل إلى مجلد public الذي بداخله لكي تُحجب الملفات الحساسة (كقواعد البيانات والمعلومات الخاصة) عن العوام.
  • على cPanel: اذهب إلى قسم (Domains)، وابحث عن الرابط الذي تستخدمه للموقع، وقم بتعديل حقل Document Root ليُشير إلى مجلد public المرفوع. (مثال: إذا فككت الموقع داخل /public_html/dorob اجعل التوجيه يشير إلى /public_html/dorob/public).
  • في بعض الاستضافات المشتركة الصارمة التي يكون مسارها الإجباري public_html، قد تضطر لاستخدام ملف .htaccess مخفي لتمرير التوجيه إلى المجلد، لكن التوجيه من لوحة الـ Domains يبقى الأفضل.

4.5 تصاريح المجلدات (File Permissions)

يحتاج النظام لكتابة السجلات (Logs) والتخزين المؤقت وحفظ الصور المرفوعة.

  • تأكد تماماً عبر مدير الملفات من أن المجلدات التالية وتفرعاتها تمتلك صلاحية / تصريح 775 (تسمح لخادم الويب بالكتابة فيها):
    • storage/
    • bootstrap/cache/
    • public/uploads/
  • بالنسبة لبقية الملفات المائية الاعتيادية في النظام، فإن التصريح القياسي 644 هو الموصى به. وتصريح بقية المجلدات العادية هو 755.

4.6 معالج التنصيب الّذكي (Installation Wizard)

لقد قمنا بتطوير معالج مرئي (UI) متطور يرافقك بضغطة زر. بعد إتمامك للخطوات السابقة، كل ما عليك هو فتح نطاقك عبر المتصفح https://your-domain.com، وسيقوم النظام أوتوماتيكياً بتحويلك إلى مسار /install إيذاناً ببدء المعالج.

1. فحص المتطلبات والصلاحيات

سيقوم النظام بالتأكد من توفر جميع إضافات PHP ومن قدرته على القراءة والكتابة في المجلدات المحددة سلفاً ويعطيك ضوءاً أخضراً.

2. معلومات الحيازة (Database)

سيطلب منك إدخال معلومات قواعد البيانات (الاسم، المستخدم، كلمة المرور) ليقوم باختبار الاتصال السريع وتوليد البيئة.

3. التنفيذ التدريجي (Progress)

يبدأ السحر هنا! يقوم النظام ببناء جداول قواعد البيانات وزرع الإعدادات بمهام مصغرة متعاقبة لتجنب توقف السيرفر (Timeout).

4. إنهاء وحماية الموقع

بنجاح العملية، يتم زرع ملف حارس storage/installed لمنع فتح صفحة التنصيب للمتطفلين مستقبلاً.

🛑
بيانات دخول المدير الافتراضية (هام جداً) لقد اكتمل التنصيب ويمكنك التوجه إلى /admin/login لفتح لوحة التحكم الخاصة بك.
البريد: [email protected]
الرمز السري: 123456
يرجى تغييرها فور الدخول إلى النظام لحماية موقعك.

5. لوحة الإدارة الشاملة

يتم الوصول إلى لوحة الإدارة عبر المسار /admin/login. من هناك، كمدير للمعرض، لديك التحكم الجذري بكافة أجزاء التطبيق.

5.1 إدارة المخزون (السيارات)

للحفاظ على جودة البحث ورتابة البيانات، يعتمد النظام على الإدخال المعياري. يجب إعداد القوائم המرجعية أولاً قبل إضافة إعلان سيارة.

1. العلامات التجارية والموديلات (Brands & Models)
قم بإضافة ماركات السيارات (مثل: تويوتا، مرسيدس) مع رفع شعاراتها الدقيقة.
بعد ذلك، في قسم "الموديلات"، قم بتعريف فئات السيارات وربطها بالماركة المناسبة (مثال: ربط "كورولا" بـ "تويوتا"). هذا الارتباط الذكي سيجعل حقول البحث في الواجهة الأمامية تتجاوب منطقياً مع خيارات العميل!
2. القوائم المرجعية الميكانيكية
من خلال إدارة الإعدادات، قم بملء جداول (أنواع الهيكل، أنواع ناقل الحركة "الفتيس"، وأنواع الدفع والوقود). هذه المدخلات تضمن أن يكون إدخالك لبيانات السيارة دقيقاً وموحداً خالياً من الأخطاء الإملائية.
3. إضافة إعلان السيارة النهائي (Listing)
بعد تهيئة القواعد، يصبح إدخال السيارة الجديدة ممتعاً!
  • قم بكتابة عنوان مميز ووصف تفصيلي.
  • اختر التصنيفات من القوائم المنسدلة التي استحدثتها سابقاً.
  • أدخل المعلومات الدقيقة (السلندرات، سنة الصنع، الممشى، الحالة الجمركية).
  • ارفع صورة الكفر (Cover) بالإضافة لمعرض صور من كافة الزوايا.
  • يمكنك تخصيص وسائل راحة معينة كعلامات (Checkboxes).
  • تفعيل أو تعطيل ظهور السيارة في واجهة الموقع بضغطة زر.
⚠️
مسح الصور المفقودة (التحديث الذكي) تم تحديث النظام ليتجاوز أخطاء غياب الصور من السيرفر. إذا حذفت صورة أو ماركة سيارة وكانت الصورة غير موجودة فعلياً لسبب ما، النظام لن ينهار وسيستكمل عملية التحديث بسلام باستخدام تقنيات الحماية.

5.2 إدارة المحتوى والصفحات

  • المدونة (Blog): محرك نشر متكامل لزيادة الـ SEO وكتابة أخبار المعرض ومقالات ونصائح حول السيارات. يشمل نظام فئات وإدارة للتعليقات.
  • الأسئلة الشائعة (FAQ): جهزناها افتراضياً بأسئلة تخص المبیعات والشراء من المعرض (مثل خيارات الدفع والضمان وتجربة القيادة)، ويمكنك تعديلها بحرية.
  • الصفحات الديناميكية (Dynamic Pages): أداة لإنشاء صفحات شروط أو سياسات إضافية بالموقع دون الحاجة لكتابة كود.

5.3 الإعدادات والهوية

خصص هوية المنصة بأكملها عبر صفحة "الإعدادات العامة":

Шعارات الجوال والحاسوب
روابط مواقع التواصل
ألوان الهوية البصرية
رموز التتبع (Analytics)
إشعار الكوكيز (الخصوصية)
تعديل نصوص القوائم
📱

6. واجهة العملاء السريعة

لقد صُممت واجهة النظام لتكون متجاوبة (Responsive) وسريعة على كافة الأجهزة، مع تركيز تام على مساعدة العميل لاكتشاف السيارات المتاحة في معرضك.

  • فلترة متقدمة للسيارات: يمكن للزائر تضييق البحث بالسعر والموديل وسنة الصنع ونوع الهيكل بسهولة فائقة، مما يقلل وقت وصوله لطلبه.
  • تصفح هرمي واضح: التركيز البصري يقع على معرض صور سياراتك (Galleries).
  • منظومة المفضلة (Wishlist): يمكن للعميل المهتم إنشاء حساب مجاني بالموقع لحفظ السيارات التي تقارن بينها لتسهيل الرجوع إليها لاحقاً.
  • حماية الصفحات الحساسة: قمنا بتأمين شاشات خطأ احترافية بالكامل باللغة العربية (خطأ 404 أو 500 أو 403) والتي لا تخرج الزائر عن الهوية البصرية للمعرض أبداً!

7. حل المشكلات الشائعة و FAQs

س: أريد تحويل الموقع لغير اللغة العربية، هل يمكنني؟

ج: النظام مصمم بشكل أساسي لدعم الاتجاه من اليمين لليسار (RTL) للغة العربية. ورغم أن من الإعدادات يمكنك التغيير إلى LTR وإدخال النصوص الإنكليزية، فإن قوالبنا مُحسنة للمنطقة العربية للحصول على أجمل مظهر.

س: لماذا يظهر معالج التنصيب (Wizard) لي فجأة؟

ج: يظهر إذا قمت بحذف أو لم ينشأ ملف storage/installed لأسباب تتعلق بصلاحيات المجلد. تأكد من أن مجلد storage يمتلك تصريح إشراف يسمح لسيرفر الويب بكتابة الملفات داخله.

س: عند محاولة تعديل إعلان تظهر صفحة "خطأ 500" أو صفحة بيضاء؟

ج: 50% من الأسباب تعود لأن الصورة الأصلية التي تحاول حذفها مفقودة فيزيائياً من السيرفر. (ملاحظة: لقد قمنا بمعالجة هذه الحالة برمجياً بالكامل في هذا التحديث، حيث أصبح النظام يكتم الخطأ ويواصل التحديث بأمان).

س: ما هو وضع الديمو (Demo Mode) في البيئة؟

ج: توجد متغيرات بيئة تدعى PROJECT_MODE. إذا تم ضبطها على القيمة 0، سيتم تجميد جميع مسارات "الحذف أو التعديل" في لوحة التحكم وتظهر رسالة بمنع ذلك. مفيد جداً إذا أردت عرض تطبيقك كمثال أولي لمستثمرين بدون أن يقوموا بمسح بياناتك!