دليل لإنشاء موضوع في Magento 2
نشرت: 2015-11-20مرحبا! هل تشعر بالفضول حيال Magento 2.0 مع الكثير من التحديثات والتغييرات؟ اليوم ، نود أن نشارك معك منشور مدونة حول Guide To Create A Theme في Magento 2. يتم تحديثه دائمًا من خلال التدرب كل يوم.
آخر تحديث: لقد أصدرنا للتو الإصدار 2.0 من Claue Multipurpose Magento 2 Theme مع مجموعة من تحسينات الأداء والميزات الحصرية. تحقق من هذا الموضوع الآن: Claue Magento Theme 2. 0
عرض حي
يعد Claue - Clean، Minimal Magento 2 & 1 Theme نموذجًا ممتازًا لمتجر تجارة إلكترونية حديث ونظيف يحتوي على أكثر من 40 تخطيطًا للصفحة الرئيسية والعديد من الخيارات للتسوق ، والمدونة ، والمحفظة ، وتخطيطات محدد مواقع المتاجر ، وصفحات مفيدة أخرى. يأتي إصدار Claue 2. 0 مع مجموعة من الميزات الحصرية بما في ذلك:
- أن تكون مبنية على موضوع Luma.
- تلبية جميع معايير موضوع Magento
- تحسن كبير في الأداء
- متوافق مع معظم ملحقات الطرف الثالث.
- متوافق تمامًا مع Magento 2.4.x
هذه النسخة المتقدمة الثانية تختلف تمامًا عن سابقتها. وبالتالي ، إذا كنت تستخدم الإصدار 1 من Claue وترغب في التحديث إلى الإصدار 2 من Claue ، فيمكنك فقط إعادة إنشاء موقع ويب جديد بدلاً من التحديث من الإصدار القديم. الآن ، دعنا نعود إلى الموضوع الرئيسي.
لقد تغير نظام السمات قليلاً في Magento 2 ولكن هناك أوجه تشابه. يناقش هذا الموضوع كيفية إنشاء الملفات التي تتكون منها السمة ، وكيفية إضافة شعار إلى السمة ، وكيفية تغيير حجم الصور.
قم بإنشاء دليل موضوع
لإنشاء دليل لموضوعك:
- انتقل إلى
<your Magento install dir>/app/design/frontend
. - قم بإنشاء دليل جديد مسمى وفقًا لاسم البائع الخاص بك:
/app/design/frontend/<Vendor>
. - ضمن دليل البائع ، قم بإنشاء دليل مسمى وفقًا لموضوعك.
التطبيق / التصميم / الواجهة / ├── <بائع> / │ │ ├── ... <الموضوع> / │ │ ├── ... │ │ ├── ...
يتطابق اسم المجلد بشكل تقليدي مع التسمية المستخدمة في رمز السمة: أي مجموعة أحرف أبجدية رقمية ، كما يراها البائع مناسبة ، مقبولة. هذا الاصطلاح هو مجرد توصية ، لذلك لا شيء يمنع تسمية هذا الدليل بطريقة أخرى.
أعلن عن موضوعك
بعد إنشاء دليل theme.xml
الخاص بك ، يجب عليك إنشاء theme.xml
يحتوي على الأقل على اسم النسق واسم النسق الأصلي (إذا كان السمة موروثة من واحد). اختياريًا ، يمكنك تحديد مكان تخزين صورة معاينة النسق.
- أضف أو انسخ من
theme.xml
موجود إلىapp/design/frontend/<Vendor>/<theme>
دليل السمةapp/design/frontend/<Vendor>/<theme>
- قم بتكوينه باستخدام المثال التالي:
<theme xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "urn:magento:framework:Config/etc/theme.xsd" > <title> New theme </title> <!-- your theme's name --> <parent> Magento/blank </parent> <!-- the parent theme, in case your theme inherits from an existing theme --> <media> <preview_image> media/preview.jpg </preview_image> <!-- the path to your theme's preview image --> </media> </theme>
اجعل المظهر الخاص بك حزمة Composer (اختياري)
يتم توزيع السمات الافتراضية gento كحزم Composer.
لتوزيع قالبك كحزمة ، أضف ملف composer.json
إلى دليل السمات وقم بتسجيل الحزمة على خادم الحزم. خادم الحزم العام الافتراضي هو https://packagist.org/.
يوفر composer.json
معلومات تبعية النسق.
مثال على موضوع composer.json
:
{ "name" : "magento/theme-frontend-luma" , "description" : "N/A" , "require" : { "php" : "~5.5.0|~5.6.0|~7.0.0" , "magento/theme-frontend-blank" : "100.0.*" , "magento/framework" : "100.0.*" }, "type" : "magento2-theme" , "version" : "100.0.1" , "license" : [ "OSL-3.0" , "AFL-3.0" ], "autoload" : { "files" : [ "registration.php" ] } }
يمكنك العثور على تفاصيل حول تكامل Composer في نظام Magento في تكامل Composer.
إضافة تسجيل. php
لتسجيل المظهر الخاص بك في النظام ، قم بإضافة ملف registration.php
بالمحتوى التالي في دليل السمات:
<?php /** * Copyright 2015 Magento. All rights reserved. * See COPYING.txt for license details. */ \Magento\Framework\Component\ComponentRegistrar :: register ( \Magento\Framework\Component\ComponentRegistrar :: THEME , 'frontend/<Vendor>/<theme>' , __DIR__ );
حيث يكون <Vendor>
هو اسم البائع الخاص بك ، فإن <theme>
هو رمز السمة.
للتوضيح ، راجع ملف registration.php لموضوع Magento Luma.
تكوين الصور
يتم تكوين أحجام صور المنتج والخصائص الأخرى المستخدمة في واجهة المتجر في ملف تكوين view.xml
. إنه مطلوب للموضوع ، ولكنه اختياري إذا كان موجودًا في النسق الأصلي.
إذا كانت أحجام صور المنتج الخاصة بالنسق الخاص بك تختلف عن تلك الخاصة بالنسق الأصلي ، أو إذا كان السمة الخاصة بك لا ترث من أي view.xml
، فأضف view.xml
باستخدام الخطوات التالية:
- قم بتسجيل الدخول إلى خادم Magento الخاص بك كمستخدم لديه أذونات لإنشاء أدلة وملفات في دليل تثبيت Magento. (عادةً ما يكون هذا هو مالك نظام ملفات Magento.)
- قم
etc
الدليلetc
في مجلد السمة الخاص بك - انسخ
view.xml
من الدليلetc
إلىetc
لموضوع موجود (على سبيل المثال ، من السمة الفارغة) إلى دليل السمةetc
إلىetc
. - هيئ جميع أحجام صور المنتج لواجهة المحل في
view.xml
. على سبيل المثال ، يمكنك جعل صور منتج عرض شبكة الفئة مربعة عن طريق تحديد حجم 250 × 250 بكسل ، وإليك الشكل الذي سيبدو عليه التكوين المقابل:
... <image id= "category_page_grid" type= "small_image" > <width> 250 </width> <height> 250 </height> </image> ...
للحصول على تفاصيل حول تكوين الصور في view.xml
، راجع تكوين خصائص الصور لموضوع السمة.
إنشاء أدلة للملفات الثابتة
من المحتمل أن يحتوي المظهر الخاص بك على عدة أنواع من الملفات الثابتة: الأنماط والخطوط وجافا سكريبت والصور. يجب تخزين كل نوع في دليل فرعي منفصل web
في مجلد السمة الخاص بك:
التطبيق / التصميم / <المنطقة> / <البائع> / <الموضوع> / ├── الويب / │ ├── css / │ │ ├── المصدر / │ ├── الخطوط / │ ├── صور / │ ├── شبيبة /
في .../<theme>/web/images
تقوم بتخزين الملفات الثابتة ذات الصلة بالنسق العام. على سبيل المثال ، يتم تخزين شعار السمة في ...<theme>/web/images
. من المحتمل أن يحتوي نسقك أيضًا على ملفات خاصة بالوحدة النمطية ، والتي يتم تخزينها في الدلائل الفرعية المقابلة ، مثل .../<theme>/<Namespace_Module>/web/css
وما شابه ذلك. تتم مناقشة إدارة ملفات السمات الخاصة بالوحدة النمطية في الأقسام التالية من هذا الدليل.
هيكل دليل الموضوع الخاص بك الآن
في هذه المرحلة ، يبدو هيكل ملف السمة الخاص بك على النحو التالي:
التطبيق / التصميم / الواجهة الأمامية / <البائع> / ├── <موضوع> / │ ├── الخ / │ │ ├── view.xml │ ├── الويب / │ │ ├── الصور │ │ │ ├── logo.svg │ ├── theme.xml │ ├── الملحن. json
شعار الموضوع
في تطبيق Magento ، التنسيق الافتراضي واسم صورة الشعار هو logo.svg
. عندما تضع صورة logo.svg
في الموقع التقليدي ، وهو <theme_dir>/web/images
directory ، يتم التعرف عليها تلقائيًا <theme_dir>/web/images
. يتم عرضه في عنوان صفحة المتجر الخاص بك بمجرد تطبيق السمة.
في نسقك المخصص ، يمكنك استخدام ملف شعار باسم وتنسيق مختلفين ، ولكن قد تحتاج إلى تعريفه.
تعتمد ضرورة الإعلان على ما إذا كان السمة الخاصة بك تحتوي على سمة رئيسية وصورة شعارها. الحالات التالية ممكنة:
- لا يحتوي نسقك على سمة رئيسية:
- إذا كان اسم وشكل صورة شعارك افتراضيًا ،
logo.svg
، فلا داعي للإعلان عنه ؛ - إذا لم يكن اسم أو تنسيق صورة الشعار افتراضيًا ، فأنت بحاجة إلى الإعلان عنه في التخطيط.
- إذا كان اسم وشكل صورة شعارك افتراضيًا ،
- الموضوع الخاص بك له موضوع رئيسي:
- إذا كانت صورة شعار السمة الخاصة بك تحمل نفس الاسم والتنسيق لشعار موضوع الوالدين ، فلا داعي للإعلان عن ذلك ؛
- إذا كان لصورة شعارك اسمًا أو تنسيقًا مختلفًا ، فقم بالإعلان عنها في التخطيط.
إعلان شعار الموضوع
للإعلان عن شعار سمة ، أضف <theme_dir>/Magento_Theme/layout/default.xml
.
على سبيل المثال ، إذا كان ملف my_logo.png
بحجم my_logo.png 300 × 300 بكسل ، فأنت بحاجة إلى إعلانه على النحو التالي:
<page xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "urn:magento:framework:View/Layout/etc/page_configuration.xsd" > <body> <referenceBlock name= "logo" > <arguments> <argument name= "logo_file" xsi:type= "string" > images/my_logo.png </argument> <argument name= "logo_img_width" xsi:type= "number" > 300 </argument> <argument name= "logo_img_height" xsi:type= "number" > 300 </argument> </arguments> </referenceBlock> </body> </page>
إعلان حجم الشعار اختياري.
قم بزيارة مدونة Magesolution لقراءة البرنامج التعليمي الكامل لـ Magento 2 وتحديث أحدث البرامج التعليمية حول Magento 2.
المصدر: magento.com