كيفية إضافة سمات منتج WooCommerce مع الاختلافات: طريقتان

نشرت: 2021-05-25

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

ما هي سمات WooCommerce؟

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

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

السمات ضرورية لـ:

  • المنتجات المتغيرة : قبل إنشاء منتجات متغيرة ، عليك تحديد سمات لها. هذا يسمح لك بإضافة أشكال مختلفة من المنتج.
  • تصفية المنتجات : طريقة شائعة للتصفية تعتمد على السمات. على سبيل المثال ، قد يبحث المستخدم عن كمبيوتر محمول بشاشة مقاس 15 بوصة.

بالإضافة إلى ذلك ، يمكنك أيضًا إنشاء سمات المنتج الافتراضية. لمزيد من المعلومات حول ذلك ، راجع هذا الدليل الكامل.

الآن بعد أن أصبح لدينا فهم أفضل للسمات ، دعنا نرى كيفية إضافة سمات المنتج مع الاختلافات في WooCommerce.

كيفية إضافة سمات منتج WooCommerce مع الاختلافات

هناك طريقتان رئيسيتان لإضافة سمات المنتج مع الاختلافات في WooCommerce:

  1. من لوحة معلومات WooCommerce
  2. برمجيا

دعونا نلقي نظرة على كلا الخيارين.

1) قم بإنشاء سمات منتج باستخدام أشكال مختلفة من لوحة معلومات WooCommerce

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

كيفية إضافة سمات منتج WooCommerce مع الاختلافات

كما ذكرنا سابقًا ، السمات عالمية ، لذا ستكون السمة الجديدة متاحة لجميع المنتجات في متجرك.

بعد إضافة سمة المنتج ، يجب عليك إضافة بعض المصطلحات التي ستصبح أشكالًا مختلفة لمنتجات معينة.

على سبيل المثال ، إذا كانت السمة هي حجم الشاشة ، فستكون الأحجام المختلفة (13 بوصة ، 15 بوصة ، 17 بوصة) هي المصطلحات.

بهذه الطريقة ، يمكنك الجمع بين السمات المختلفة لكل منتج وإنشاء أشكال مختلفة. على سبيل المثال ، يمكنك الحصول على كمبيوتر محمول أحمر مقاس 13 بوصة وجهاز كمبيوتر محمول أزرق مقاس 15 بوصة وما إلى ذلك.

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

دعنا نلقي نظرة على كيفية إضافة سمات المنتج مع الاختلافات في WooCommerce برمجيًا .

2. كيفية إنشاء سمات المنتج مع الاختلافات برمجيًا

إذا كانت لديك مهارات في البرمجة ، فيمكنك إضافة سمات المنتج وتنوعاتها برمجيًا. يعد هذا خيارًا رائعًا إذا كنت تريد توفير الوقت عند إنشاء السمات حيث يمكنك إضافتها بشكل مجمّع.

ملاحظة : نظرًا لأننا سنقوم بتحرير بعض الملفات الأساسية ، قبل أن تبدأ ، نوصيك بما يلي:

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

لاحظ أنه يجب عليك إدخال التعليمات البرمجية المخصصة الخاصة بك في ملف jobs.php لموضوع الطفل الخاص بك.

بعد قيامك بعمل نسخة احتياطية من موقعك وإنشاء قالب فرعي ، في لوحة معلومات WordPress الخاصة بك ، انتقل إلى المظهر> تخصيص وابحث عن ملف function.php في العمود الأيمن. ثم قم بلصق التعليمة البرمجية التالية في نهاية الملف.

نص PHP كامل

هذا هو النص الكامل ، في القسم التالي ، سنقسمه إلى أجزاء ونوضح ما يفعله كل جزء.

 add_action ('admin_init'، 'QuadLayers_add_product_attributes') ؛

الوظيفة QuadLayers_add_product_attributes () {
    Atts $ = مجموعة (
        'حجم' => مجموعة ('XL'، 'صغير')،
        "اللون" => مجموعة ("بني" ، "رمادي" ، "أصفر") ،   
    ) ؛ 
    foreach ($ atts كـ $ key => قيم $) { 
       add_attribute الجديد ($ key، $ values)؛ 
    }
}

فئة add_attribute {   
     / *
     * قم بتسجيل فئة سمة منتج woocommerce عالمية.
     *
     *param str $ nam | اسم السمة
     *param arr $ vals | مجموعة من الاختلافات
     * 
     * /
    public function __construct ($ nam، $ vals) {

                $ attrs = مجموعة () ؛      
                سمات $ = wc_get_attribute_taxonomies () ؛                          
                    foreach (سمات $ مثل $ key => $ value) {
                        array_push (attrs $ ، سمات $ [$ key] -> attribute_name) ؛                    
                    }              
               إذا (! in_array ($ nam، $ attrs)) {            
                    $ args = مجموعة (
                        'معرف' => "،
                        "سبيكة" => دولار نام ،
                        'name' => __ ($ nam، 'woocommerce') ،
                        'type' => 'select' ،
                        'orderby' => 'menu_order' ،
                        'has_archives' => خطأ ،
                        "الحد" => 1 ،
                        "is_in_stock" => 1
                    ) ؛                    
                   إرجاع wc_create_attribute ($ args) ؛ 
                }               
               $ this-> add_var ($ nam، $ vals)؛
    }

    add_var الوظيفة العامة ($ nam، $ vals) {  
        التصنيف $ = 'pa _'. $ nam؛      
        $ term_slug = sanitize_title ($ nam) ؛ 
        // تحقق مما إذا كان المصطلح موجودًا وإذا لم يكن موجودًا ، فقم بإنشائه (واحصل على المصطلح ID).
        لـ ($ ff = 0؛ $ ff term_id؛
            }
        }
    }
}

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

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

 الوظيفة QuadLayers_add_product_attributes () {
    Atts $ = مجموعة (
        'new-attribute' => array ('aside'، 'beside'، 'long'، 'none'، 'short') ،        
    ) ؛ 

بعد ذلك توجه إلى المنتجات> السمات في لوحة تحكم المسؤول. إذا سارت الأمور على ما يرام ، فسترى السمات والمصطلحات التي أضفتها للتو باستخدام البرنامج النصي PHP.

اختلافات سمات المنتج

إذا لم تتمكن من رؤية الأشكال ، فما عليك سوى إعادة تحميل الصفحة حتى تتمكّن من ملؤها.

علاوة على ذلك ، ستكون السمات متاحة أيضًا لإعداد أشكال المنتج على صفحة محرر المنتج:

السمات ستكون متاحة الآن أيضًا لتعيين أشكال المنتج ،

وهذا كل شيء! الآن يمكنك ببساطة تحرير نص PHP وإضافة سمات وأشكال منتج WooCommerce الخاصة بك. يمكنك حتى تحديثه ديناميكيًا عن طريق تطبيق المنطق الشرطي.

كيف يعمل البرنامج النصي؟

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

الأقسام الرئيسية من البرنامج النصي هي:

الخطاف
 add_action ('admin_init'، 'QuadLayers_add_product_attributes') ؛

الوظيفة QuadLayers_add_product_attributes () {
    Atts $ = مجموعة (
        'حجم' => مجموعة ('XL'، 'صغير')،
        "اللون" => مجموعة ("بني" ، "رمادي" ، "أصفر") ،   
    ) ؛ 
    foreach ($ atts كـ $ key => قيم $) { 
       add_attribute الجديد ($ key، $ values)؛ 
    }
}

نستخدم admin_init() الكود. يمكنك استخدام عدة أدوات أخرى هنا ولكن في حالتنا ، أحببنا أداء البرنامج النصي باستخدام هذا.

في الدالة hooked ، نحدد قيم السمات والاختلافات في مصفوفة واحدة متعددة الأبعاد. ستنشئ حلقة foreach() خاصية لكل عنصر من عناصر المصفوفة الرئيسية.

داخل الحلقة ، يتم إنشاء السمة بواسطة add_attribute(); .

الطبقة

لقد أنشأنا فئة OOP مسؤولة عن إنشاء السمة وإضافة بعض الاختلافات إليها. يتم إجراء ذلك في تشغيل واحد في كل مرة يتم فيها إنشاء مثيل للفصل ، باستخدام new add_attribute() في القسم أعلاه.

 فئة add_attribute {   
    public function __construct ($ nam، $ vals) {
                $ attrs = مجموعة () ؛      
                سمات $ = wc_get_attribute_taxonomies () ؛                          
                    foreach (سمات $ مثل $ key => $ value) {
                        array_push (attrs $ ، سمات $ [$ key] -> attribute_name) ؛                    
                    }              
               إذا (! in_array ($ nam، $ attrs)) {            
                    $ args = مجموعة (
                        'معرف' => "،
                        "سبيكة" => دولار نام ،
                        'name' => __ ($ nam، 'woocommerce') ،
                        'type' => 'select' ،
                        'orderby' => 'menu_order' ،
                        'has_archives' => خطأ ،
                        "الحد" => 1 ،
                        "is_in_stock" => 1
                    ) ؛                    
                   إرجاع wc_create_attribute ($ args) ؛ 
                }               
               $ this-> add_var ($ nam، $ vals)؛
    }

الوظيفة الأولى هي construct() وتقوم بإنشاء السمة باستخدام wc_create_attribute() WooCommerce المضمنة ، بينما تستدعي أيضًا الوظيفة الثانية: add_var()

 add_var الوظيفة العامة ($ nam، $ vals) {  
        التصنيف $ = 'pa _'. $ nam؛      
        $ term_slug = sanitize_title ($ nam) ؛ 
        // تحقق مما إذا كان المصطلح موجودًا وإذا لم يكن موجودًا ، فقم بإنشائه (واحصل على المصطلح ID).
        لـ ($ ff = 0؛ $ ff <count ($ vals)؛ $ ff ++) {
            if (! term_exists ($ vals [ $ ff ] ، $ التصنيف)) {$ term_data = wp_insert_term ($ vals [ $ ff ] ، $ التصنيف)؛ $ term_id = $ term_data ['term_id'] ؛ } else {$ term_id = get_term_by ('name'، $ vals [ $ ff ] ، التصنيف $) -> term_id؛ }}}

ستضيف الوظيفة الثانية add_var() جميع المتغيرات المضمنة في المصفوفة الأصلية للسمة التي يتم تمريرها أيضًا عبر الوظائف.

استنتاج

باختصار ، تسمح لك سمات المنتج بإنشاء منتجات متغيرة ومساعدة المستخدمين على تصفية المنتجات بناءً على ميزات معينة.

في هذا الدليل ، رأينا طريقتين مختلفتين لإضافة سمات المنتج مع الاختلافات في WooCommerce:

  1. من لوحة تحكم المسؤول
  2. برمجيا

يعد إنشاء سمات من لوحة معلومات WooCommerce أمرًا سهلاً. ومع ذلك ، قد يستغرق الأمر وقتًا طويلاً إذا كنت بحاجة إلى إضافة العديد من السمات للعديد من المنتجات.

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

إذا تلقيت خطأ أثناء محاولة تشغيل البرنامج النصي ، فلا تقلق. يحدث هذا عادةً لأنك في صفحة قائمة السمات. الطريقة الصحيحة لتحديث البرنامج النصي هي إعادة تحميل صفحة الرابط الثابت للوحة تحكم مسؤول WordPress.

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

هل قمت بإنشاء سمات المنتج في متجرك؟ ما الطريقة التي استخدمتها؟ اسمحوا لنا أن نعرف في التعليقات أدناه!