دليل لإنشاء وحدة نمطية في Magento 2

نشرت: 2015-11-20

هل تبحث عن طريقة لإنشاء وحدة نمطية في Magento 2؟ اليوم ، سنوجهك إلى كيفية إنشاء وحدة في Magento 2. نأمل أن تستمتع بها وتستفيد منها بسهولة!

يعد إنشاء وحدة مرنة أمرًا صعبًا للغاية ، ولكن لدينا برنامج تعليمي بسيط حول إنشاء وحدة بسيطة في Magento 2. آمل أن يساعدك هذا البرنامج التعليمي في الخطوة الأولى. قبل إنشاء الوحدة ، من الضروري فهم الاختلافات في بنية الدليل بين نسختين من Magento. في بنية دليل Magento 2 ، تتم إزالة تجمعات التعليمات البرمجية من بنية ملف قاعدة التعليمات البرمجية. الآن يتم تجميع جميع الوحدات حسب البائع. ومن ثم ، يمكننا إنشاء وحدات داخل دليل التطبيق / الكود مباشرةً.

آخر تحديث: لقد أصدرنا للتو الإصدار 2.0 من Claue Multipurpose Magento 2 Theme ، مع مجموعة من تحسينات الأداء والميزات الحصرية. تحقق من هذا الموضوع الآن: Claue Magento Theme 2. 0

claue2_edited (1)

عرض حي

يعد Claue - Clean، Minimal Magento 2 & 1 Theme نموذجًا ممتازًا لمتجر تجارة إلكترونية حديث ونظيف يحتوي على أكثر من 40 تخطيطًا للصفحة الرئيسية والعديد من الخيارات للتسوق ، والمدونة ، والمحفظة ، وتخطيطات محدد مواقع المتاجر ، وصفحات مفيدة أخرى. يأتي إصدار Claue 2. 0 مع مجموعة من الميزات الحصرية بما في ذلك:

  • أن تكون مبنية على موضوع Luma.
  • تلبية جميع معايير موضوع Magento
  • تحسن كبير في الأداء
  • متوافق مع معظم ملحقات الطرف الثالث.
  • متوافق تمامًا مع Magento 2.4.x

هذه النسخة المتقدمة الثانية تختلف تمامًا عن سابقتها. وبالتالي ، إذا كنت تستخدم الإصدار 1 من Claue وترغب في التحديث إلى الإصدار 2 من Claue ، فيمكنك فقط إعادة إنشاء موقع ويب جديد بدلاً من التحديث من الإصدار القديم. الآن ، دعنا نعود إلى الموضوع الرئيسي.

الاختلافات بين Magento1.0 و Magento2.0

توجد بعض الاختلافات الأساسية بين Magento 1.0 و Magento 2.0 بحيث يمكنك بسهولة تصور بنية المجلد في Magento 2.0. وبالتالي ، فإن إنشاء وحدة نمطية بسيطة في Magento 2.0 هو مجرد نسيم.

دليل لإنشاء وحدة نمطية في Magento 2

قم بإنشاء وحدة نمطية في Magento2

الخطوة 1: إنشاء ملفات التكوين.

- إنشاء ملف: app / code / Tutorial / Example / etc / module.xml (الغرض: سيعلن هذا الملف الوحدة النمطية الخاصة بك) وأدخل الكود التالي فيه:

  1. إصدار xml = "1.0" ؟>
  2. <config xmlns: xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi: noNamespaceSchemaLocation = "..
  3. /../../../../lib/internal/Magento/Framework/Module/etc/module.xsd " >
  4. < اسم الوحدة النمطية = "Tutorial_Example" setup_version = "1.0.0" >
  5. </module>
  6. </config>

- إنشاء ملف: app / code / Tutorial / Example / etc / frontend / route.xml (هدف: سيتم الإعلان عن جهاز التوجيه الخاص بالوحدة الخاصة بك للواجهة الأمامية هنا):

  1. إصدار xml = "1.0" ؟>
  2. <config xmlns: xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi: noNamespaceSchemaLocation = "..
  3. /../../../../../lib/internal/Magento/Framework/App/etc/routes.xsd " >
  4. <router id = "standard" >
  5. <route id = “example” frontName = “example” >
  6. < اسم الوحدة النمطية = "Tutorial_Example" />
  7. </route>
  8. </router>
  9. </config>

الخطوة 2: إنشاء ملفات التحكم والتخطيط والقالب.

بعد إنشاء ملفات التكوين ، سنبدأ بملفات وحدة التحكم والتخطيط والقالب.

- إنشاء ملف وحدة التحكم: app / code / Tutorial / Example / Controller / Index / Index.php و ضع هذا الكود:

  1. بي أتش بي
  2. برنامج تعليمي لمساحة الاسم \ مثال \ وحدة تحكم \ فهرس ؛
  3. استخدام Magento \ Framework \ App \ Action \ Context ؛
  4. استخدم Magento \ Framework \ View \ Result \ PageFactory ؛
  5. يمتد فهرس الفئة \ Magento \ Framework \ App \ Action \ Action
  6. {
  7. / **
  8. *param Context $ Context
  9. *param PageFactory $ resultPageFactory
  10. * /
  11. الوظيفة العامة __construct (
  12. سياق $ سياق ،
  13. PageFactory $ resultPageFactory
  14. )
  15. {
  16. الوالد :: __construct ( سياق $ ) ؛
  17. $ this -> resultPageFactory = $ resultPageFactory ؛
  18. }
  19. تنفيذ الوظيفة العامة ()
  20. {
  21. $ resultPageFactory = $ this -> resultPageFactory -> create () ؛
  22. // أضف عنوان الصفحة
  23. $ resultPageFactory -> getConfig () -> getTitle () -> set ( __ ( 'نموذج وحدة' )) ؛
  24. // إضافة مسار تنقل
  25. / **var \ Magento \ Theme \ Block \ Html \ Breadcrumbs * /
  26. فتات الخبز $ = resultPageFactory -> getLayout () -> getBlock ( 'فتات الخبز' ) ؛
  27. فتات الخبز $ -> addCrumb ( "المنزل" ،
  28. [
  29. "التسمية" => __ ( "المنزل" ) ،
  30. "العنوان" => __ ( "الصفحة الرئيسية" ) ،
  31. 'link' => $ this -> _url -> getUrl ( )
  32. ]
  33. ) ؛
  34. مسارات التنقل $ -> addCrumb ( 'tutorial_example' ،
  35. [
  36. "التسمية" => __ ( "مثال" ) ،
  37. "العنوان" => __ ( "مثال" )
  38. ]
  39. ) ؛
  40. عودة $ resultPageFactory ؛
  41. }
  42. }

- إنشاء ملف التخطيط: app / code / Tutorial / Example / view / frontend / layout / example_index_index.xml

  1. إصدار xml = "1.0" ترميز = "UTF-8" ؟>
  2. <page xmlns: xsi = "http://www.w3.org/2001/XMLSchema-instance" تخطيط = "3columns"
  3. xsi: noNamespaceSchemaLocation = “../../../../../../../lib/internal/Magento/Framework/View/Layout/
  4. etc / page_configuration.xsd ” >
  5. <الجسم>
  6. <referenceContainer name = "المحتوى" >
  7. <block class = "Magento \ Framework \ View \ Element \ Template" الاسم = "tutorial_example_block"
  8. template = “Tutorial_Example :: index.phtml” />
  9. </referenceContainer>
  10. </body>
  11. </page>

- أنشئ ملف النموذج: app / code / Tutorial / Example / view / frontend / قوالب / index.phtml

<h1> php echo __ ( 'This is a example module!' ) ؟> </h1>

الخطوة 3: قم بتنشيط الوحدة النمطية في ملف التكوين الخاص بـ Magento 2

سنقوم بتنشيط هذه الوحدة من خلال فتح app / etc / config.php ملف ثم أضف هذا السطر فيه:

ثم افتح الأمر في Windows (أو Terminal في Linux و MAC OS). انتقل إلى مجلد جذر Magento وقم بتشغيل سطر الأوامر هذا لتثبيت الوحدة النمطية الخاصة بك:

إعداد bin \ magento: ترقية

أخيرًا ، امسح ذاكرة التخزين المؤقت لـ Magento ثم قم بالوصول باستخدام عنوان url http: // localhost / magento2 / example / index / index /

قم بزيارة مدونة Magesolution حتى لا تفوت أي تحديثات أو دروس تعليمية حول Magento 2.0