استرجاع طلبات ووكوميرس من قبل 4 ساعات
مقدمة
يعد تتبع الطلبات في ووكومرس من الأمور الأساسية التي تسهم في إدارة المتجر الإلكتروني بكفاءة. في بعض الأحيان، قد تحتاج إلى استرجاع الطلبات التي تم إنشاؤها في فترة زمنية معينة، مثل الطلبات التي تم تقديمها في الساعات الأربع الماضية. سيتناول هذا المقال كيفية تنفيذ استعلام لاسترجاع الطلبات الخاصة بووكومرس باستخدام كود مخصص في ووردبريس، مع التركيز على إيجاد الطلبات التي تم تسجيلها خلال الفترات الزمنية المحددة.
كيفية استرجاع طلبات ووكومرس من الساعات الأربع الماضية
لديك كود يقوم بإرجاع معرفات جميع الطلبات بنجاح، ولكن الهدف هنا هو تصفية تلك الطلبات للحصول على الطلبات التي تم تقديمها فقط في نطاق زمني محدد، أي من 0 إلى 4 ساعات. لنلقِ نظرة على كيفية القيام بذلك.
من أجل تنفيذ هذا الإجراء، ينبغي عليك الاستفادة من استعلامات قاعدة البيانات الخاصة بـ ووردبريس والتي تدعم كائن $wpdb
. ابدأ بتعريف الدالة والتي ستحصل على معرفات الطلبات لمنتج معين وتصفية النتائج حسب حالة الطلب وتاريخ تقديمه.
function get_recent_orders_by_product_id( $product_id, $order_status = ['wc-completed', 'wc-processing'] ) {
global $wpdb;
$results = $wpdb->get_col("
SELECT order_items.order_id
FROM {$wpdb->prefix}woocommerce_order_items as order_items
LEFT JOIN {$wpdb->prefix}woocommerce_order_itemmeta as order_item_meta ON order_items.order_item_id = order_item_meta.order_item_id
LEFT JOIN {$wpdb->posts} AS posts ON order_items.order_id = posts.ID
WHERE posts.post_type='shop_order'
AND posts.post_status IN ( '" . implode( "','", $order_status ) . "' )
AND order_items.order_item_type='line_item'
AND order_item_meta.meta_key='_product_id'
AND order_item_meta.meta_value='$product_id'
AND posts.post_date >= NOW() - INTERVAL 4 HOUR
");
return count($results);
}
شرح الكود
في هذا الكود، يتم استخدام جملة SQL لاسترجاع طلبات المنتجات حسب معرف المنتج وحالة الطلب. تم إضافة شرط جديد للتحقق من تاريخ إنشاء الطلب عبر استخدام الدالة NOW()
وتقليل الوقت بمقدار 4 ساعات.
يعود الكود بعدد الطلبات التي تلبي الشروط المحددة، مما يمكنك من معرفة عدد الطلبات التي تم تقديمها لهذا المنتج خلال الساعات الأربع الماضية.
التحديات والمشاكل الشائعة
عند استخدام الكود المذكور، قد تواجه بعض المشكلات، مثل الأخطاء النحوية في جملة SQL أو نسيان وضع شروط التصفية بشكل صحيح. تأكد دائمًا من استخدام علامات الاقتباس بشكل صحيح حول قيم المتغيرات.
أيضًا، من المهم مراجعة أنواع البيانات التي يتم إدخالها في استعلامات SQL، حيث إذا كان هناك نوع بيانات خاطئ قد يتسبب ذلك في فشل الاستعلام.
تسريع عملية استرجاع الطلبات
يمكنك تحسين أداء الاستعلامات عن طريق التأكد من أن الجداول الخاصة بك تحتوي على فهارس مناسبة. هذا يساعد في تسريع استرجاع البيانات وتقليل الحمل على قاعدة البيانات.
الخلاصة
تمثل عملية استرجاع الطلبات من ووكومرس خلال فترة زمنية معينة أداة قيمة لمتاجر التجارة الإلكترونية. يمكن استخدام الكود المشار إليه مع مراعاة تفعيل الأخطاء الشائعة والتحقق من صحة البيانات. باستخدام هذه الطرق، يمكنك الحصول على ميزة تنافسية قوية من خلال تقديم خدمات تتبع المتطلبات لعملائك بشكل فعال.
باتباع هذه الأساليب، يمكنك ضمان ونشر التجربة المثلى لمستخدمي ووكومرس الخاصة بك. نأمل أن تكون المعلومات المقدمة قد وضحت لك كيف يمكنك استرجاع الطلبات من ووكومرس في فترة زمنية محددة.