دليل المطورين

التركيبة البرمجية الأساسية لنظام ماجنتو

ماجنتو 2: التركيبة البرمجية للنظام

متابعي مدونة ماجنتو العرب الأعزاء، لكي تبدأ رحلة تطوير المتاجر الالكترونية باستخدام نظام ماجنتو فإن أول خطوة عليك فعلها هي الإلمام بتركيبة نظام الماجنتو البرمجية وفهمها لتتمكن من بدء رحلة التطوير بشكل سليم.

قبل أن تبدأ:

قبل أن تبدأ رحلة التطوير من الواجب عليك أن تعرف التالي:
لغة البرمجة المستخدمة لبرمجة نظام ماجنتو وهي لغة php
إطار العمل المستخدم في برمجة نظام ماجنتو هو إطار Zend

 

بعد أن تعرفنا على أساس النظام دعنا نتعرف على

التركيبة الأساسية للنظام من ناحية المجلدات والملفات.

عند تحميلك لأي إصدار من ماجنتو 2 ستلاحظ المجلدات التالية، وإليك نبذة مختصرة عن كل مجلد.

  • App وهو المجلد الذي يحتوي على ملفات القوالب -الثيمات- وملفات الموديولات -الإضافات- وغيرها.. ويندرج تحت هذا المجلد 4 مجلدات كالتالي:
    • Code هذا المجلد يندرج أسفله ملفات الموديولات -الإضافات-، اسفله أيضاً نقوم بانشاء الموديولات الخاصة بنا.
    • Design هذا المجلد يندرج أسفله ملفات القوالب -الثيمات-، وأيضاً بإمكاننا انشاء قالبنا الخاص فيه.
    • Etc هذا المجلد يحتوى على ملف الاتصال بقاعدة البيانات php وملف يحتوى على الموديولات المنصبة على النظام config.php
    • I18n هذا المجلد نقوم أسفله بإدراج ملفات اللغات مثلاً حزمة اللغة العربية أو حزمة لغة خاصة بنا.
  • Bin يحتوي بداخله على الملف الذي نقوم باستخدامه لتنفيذ أوامر الماجنتو.
  • Dev هذا المجلد يحتوى على سكربتات الفحص الخاصة بالماجنتو.
  • Lib يحتوي هذا المجلد على ملفات مكتبة الماجنتو.
  • Pub يحتوي هذا المجلد على الملفات الستاتيكية لمتجر الماجنتو إضافةً الى مكتبة الصور.
    • Static يحتوي على الملفات الستاتيكية للقوالب والتي قمنا بتوليدها باستخدام أمر deploy في ماجنتو.
    • Media هذا المجلد يحتوي على مكتبة الصور (صور المنتجات، صور التصنيفات، صور أخرى قمنا برفعها من خلال لوحة الماجنتو)
    • Errors هذا المجلد يحتوي على سجلات الأخطاء.
  • Var يحتوي هذا المجلد على كافة الملفات المؤقتة.
    • Cache يحتوى على ملفات الكاش الخاصة بصفحات المتجر الأمامية.
    • Log يحتوي على سجلات الأخطاء الخاصة بنظام ماجنتو.
    • Report يحتوي على ملفات الأخطاء التي تظهر في صفحة خطأ رمز 503 او ملفات أخطاء الapi.
    • Session يحتوي على ملفات جلسات العملاء والأعضاء.
    • View_preprocessed يحتوى على ملفات الثيم التي تم توليدها بشكل مؤقت.
    • Generation في نسخ ماجنتو 1 يحتوى على ملفات الphp التي تم توليدها وفي نسخ ماجنتو 2.2 تم نقله الى مجلد خارجي اسمه generated
  • Vendor يحتوى على ملفات إطار العمل الأساسية للماجنتو، أيضاً يوجد به بعض الموديولات التي تم تنزيلها باستخدام composer
  • Generated نفس مجلد generation الموجود داخل مجلد var ويوجد في نسخ ماجنتو 2 فأعلى.

 

التركيبة البرمجية لموديولات -إضافات- الماجنتو

وفقاً لما شرحنا بالأعلى فإن ملفات الموديولات يتم اضافتها في مجلد code الموجود داخل مجلد app

أيضاً من الممكن ان تكون الموديولات داخل مجلد vendor اذا تم تنزيلها باستخدام composer
الموديول نفسه يحتوي على مجلد أساسي وأسفله مجلد فرعي وأسفل المجلد الفرعي توجد ملفات الموديول مقسمة على مجلدات معينة.

حيث أن طريقة كتابة اسم الموديول تتم وفق التالي Vendor_ModuleName
حيث Vendor هو اسم المجلد الأساسي للموديول -بامكانك تسميته كما ترغب في حال كنت تنشئ موديول جديد-

في شرحنا هذا سنعتمد أن اسم المجلد الأساسي للموديول هو Magar واسم المجلد الفرعي All
ويكون اسم الموديول Magar_All

وللدخول الي ملفات الموديول يكون المسار كالتالي app > code > Magar > All

الان لنأتي الى المجلدات والملفات الموجودة داخل مجلد الموديول All

  • Etc مجلد أساسي يجب ان يكون موجود في الموديول، ويحتوي على ملفات اعدادات الموديول.
  • Block مجلد يحتوى على ملفات البلوك وتكون بصيغة php
  • Model مجلد يحتوى على ملفات الموديل وتكون بصيغة php
  • Controller مجلد يحتوى على ملفات الكونترولز وتكون بصيغة php
  • Helper يحتوي على ملفات مساعدة تكون بصيغة php
  • Console يحتوي على ملفات php بداخلها كلاسات نستخدمها في تنفيذ أوامر الماجنتو bin/magento
  • Api يحتوى على ملفات الApi الخاصة بالموديول
  • Observer يحتوى على ملفات php للمراقبة.
  • I18n يحتوى على ملفات اللغات والترجمات الخاصة بالموديول.
  • Setup يحتوى على ملفات php لتنصيب متعلقات الموديول مثلاً انشاء جداول او إضافة حقول بداخل قاعدة البيانات.
  • Plugins يحتوي على ملفات الإضافات plugins وتكون بصيغة php.
  • Ui يحتوي على ملفات الcomponents مثل الازرار والحقول وغيرها وتكون بصيغة xml.
  • registeration.php ملف أساسي يتم من خلاله تعريف الموديول وتسجيله في نظام ماجنتو.
  • View مجلد يحتوي على ملفات css و html و phtml و js -ملفات التصميم-

 

التركيبة البرمجية لثيمات -قوالب- الماجنتو

كما شرحنا مسبقاً فإن قوالب الماجنتو يتم وضعها بداخل مجلد Design الموجود بداخل مجلد app
نفس طريقة تسمية الموديول يتم اتباعها في تسمية القالب Theme_ThemeName

حيث تتواجد ملفات الثيم أسفل مجلد ThemeName

ملفات القالب تعتمد على الموديولات الخاصة بالماجنتو مثلاً اذا رغبنا في تعديل تصميم صفحة المنتج في قالب الماجنتو الذي ننشأه فإننا نقوم بنسخ الملف الذي نرغب بتعديله ووضعه داخل مجلد القالب بالطريقة التالية:

  • لنفترض أن الموديول الأساسي الذي نرغب بإعادة تصميمه هو Magento_Catalog
  • نقوم بنسخ ملفات الموديول الأساسي او الملف الphtml الذي نرغب بإعادة تصميمه الى نفس المسار أسفل قالبنا ويكون المسار Theme/ThemeName/Magento_Catalog/view/tempaltes/name.phtml

أما بخصوص باقي الملفات التي يجب أن تتواجد في القالب فهي كالتالي:

  • Etc مجلد يحتوي على اعدادات الثيم ويكون اسمه بالغالب xml
  • Media في هذا المجلد نقوم بوضع الصور او الفيديوهات التي نستخدمها في قالبنا.
  • Web هذا المجلد يحتوي على ملفات التنسيق والخطوط css/js/fonts
  • xml هذا الملف يجب أن يكون موجود في ملفات القالب ويحتوي على اسم القالب والقالب الأب له.
  • Reguirejs-config.js هذا الملف يحتوي على استدعاءات ملفات الjs الأساسية.
  • registeration.php هذا الملف يستخدم لتسجيل الثيم.

هذه هي التركيبة البرمجية الأساسية لنظام ماجنتو وموديولاته وقوالبه.

نرجو أن تكون الفكرة العامة لتركيبة نظام ماجنتو قد وصلتكم بالشكل الكافي.

سنتحدث قريباً عن كيفية انشاء موديول وكيفية انشاء قالب باذن الله.

 

أطيب التحيات نتمناها لكم.

خدماتنا - ماجنتو العرب
الوسوم

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

إغلاق