ووردبريس

إضافة تصنيف مخصص لمنتجات ووكومرس باستخدام PUT عبر REST API

تُعتبر إضافة تصنيفات مُخصصة إلى المنتجات في WooCommerce عبر واجهة برمجة التطبيقات (REST API) من المهام المفيدة التي يمكن أن تُحسن من إدارة المتجر وتحسين تجربة المستخدم. سنستعرض في هذا المقال كيفية استخدام طريقة PUT لإضافة تصنيف مُخصص يُعرف باسم “علامات المنتجات” (product_brands) إلى المنتجات، وسنوضح كيفية تحقيق ذلك بخطوات واضحة ومعالجة الأخطاء الشائعة.

فهم مفهوم التصنيفات المُخصصة في WooCommerce

التصنيفات المُخصصة تتيح لك تنظيم المنتجات بشكل أفضل. في WooCommerce، يُمكن أن تُساهم هذه التصنيفات في تسهيل البحث عن المنتجات وتحسين تجربة المتسوقين. لخلق تصنيف مخصص مثل “علامات المنتجات”، عليك أولاً التأكد من إضافته إلى واجهة REST API الخاصة بـ WooCommerce.

إضافة التصنيفات المُخصصة إلى واجهة REST API

لإضافة التصنيف المخصص الخاص بك إلى واجهة REST API، يجب استخدام دالة مُخصصة في ووردبريس. الكود التالي يوضح كيفية فعل ذلك:

add_filter( 'woocommerce_rest_prepare_product_object', 'uplvl_rest_api_prepare_brands_tax', 10, 3 );
function uplvl_rest_api_prepare_brands_tax( $response, $object, $request ) {
    $product_id = $object->get_id();
    if ( empty( $response->data[ 'product_brands' ] ) ) {
        $terms = [];
        foreach ( wp_get_post_terms( $product_id, 'product_brands' ) as $term ) {
            $terms[] = [
                'id'   => $term->term_id,
                'name' => $term->name,
                'slug' => $term->slug,
            ];
        }
        $response->data[ 'product_brands' ] = $terms;
    }
    return $response;
}

بهذا الكود، نقوم بإعداد الكائنات للمنتجات ليتضمن معلومات التصنيفات المخصصة. بعد إضافة هذا الكود، يمكنك رؤية التصنيفات عند الاستعلام عن منتج معين عبر نقطة النهاية /wp-json/wc/v3/products/3130.

استخدام طريقة PUT لتغيير تصنيف المنتج

الآن بعد أن قمت بإعداد التصنيفات المخصصة، نأتي إلى الخطوة التالية وهي استخدام طريقة PUT لتحديث أو إضافة “علامات المنتجات” إلى منتج محدد. يمكنك استخدام الدالة woocommerce_rest_pre_insert_product_object لتحقيق ذلك.

function uplvl_prepare_insert_product( $product, $request ) {
    if ( isset( $request['product_brands'] ) ) {
        wp_set_object_terms($product->get_id(), $request['product_brands'], 'product_brands');
    }
    return $product;
}
add_filter( 'woocommerce_rest_pre_insert_product_object', 'uplvl_prepare_insert_product', 10, 2 );

من خلال هذا الكود، نتمكن من استخدام بيانات الطلب لتحديث التصنيفات المُخصصة للمنتج. يجب الانتباه إلى استخدام الدالة get_id() للحصول على معرف المنتج، بدلاً من محاولة الوصول إليه كما هو في مصفوفة.

معالجة الأخطاء الشائعة

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

إذا اُستخدم wp_set_post_terms بدلاً من wp_set_object_terms، تأكد من طبيعة الكائنات التي تتعامل معها واستخدم الدالة المناسبة بالاعتماد على وثائق WooCommerce.

استنتاج

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

في النهاية، تذكر دائماً أهمية التحقق من الوثائق الرسمية والتحديثات المستمرة المتعلقة بـ WooCommerce و REST API لضمان فعالية الحلول المعتمدة.

احمد علي

متخصص في مجال تطوير وإدارة المواقع الإلكترونية، يتمتع بخبرة واسعة في التعامل مع منصات إدارة المحتوى، خاصة ووردبريس. يقدم أحمد حلولاً مبتكرة واستراتيجيات فعالة لتحسين أداء المواقع وتطوير تصميماتها بما يتناسب مع احتياجات المستخدمين. كما يتميز بقدرته على تبسيط المفاهيم التقنية وكتابة محتوى تعليمي يساعد الأفراد والشركات على تحسين تواجدهم الرقمي وتحقيق أهدافهم على الإنترنت.
زر الذهاب إلى الأعلى
Don`t copy text!