هذه المرة سوف نلقي نظرة على بعض SQL. كما تعلم ، يتم تخزين طلبات WooCommerce (مثل منتجات WooCommerce) في قاعدة بيانات وورد بريس.
بدلاً من استخدام حلقات PHP وشرطية معقدة ، يمكن أن تساعد معرفة القليل من قاعدة البيانات “SQL SELECT” في بعض الأحيان. أخذت بعض الإلهام (لأنني لا أعرف كل شيء عن ظهر قلب) من وظيفة WooCommerce ” wc_customer_bought_product () ” ، والتي تحتوي على بعض SQL للتحقق مما إذا كان المستخدم قد اشترى منتجًا معينًا.
لقد لعبت قليلاً مع نفس مكالمة SQL SELECT ، وتمكنت من إرجاع قائمة عناوين البريد الإلكتروني للمستخدمين الذين اشتروا معرّف منتج معين. إذا كنت بحاجة إلى هذا في أي وقت ، فاستمتع!
إليك المصفوفة التي تحتوي على قائمة رسائل البريد الإلكتروني الخاصة بفواتير العملاء الذين قاموا بشراء منتج WooCommerce معين
مقتطف PHP: احصل على قائمة رسائل البريد الإلكتروني لعملاء WooCommerce الذين اشتروا منتجًا معينًا
/**
* @snippet Get Customers Who Purchased Product ID
* @how-to Get CustomizeWoo.com FREE
* @author Rodolfo Melogli
* @compatible WooCommerce 3.7
* @donate $9 https://businessbloomer.com/bloomer-armada/
*/
// Access WordPress database
global $wpdb;
// Select Product ID
$product_id = 282;
// Find billing emails in the DB order table
$statuses = array_map( 'esc_sql', wc_get_is_paid_statuses() );
$customer_emails = $wpdb->get_col("
SELECT DISTINCT pm.meta_value FROM {$wpdb->posts} AS p
INNER JOIN {$wpdb->postmeta} AS pm ON p.ID = pm.post_id
INNER JOIN {$wpdb->prefix}woocommerce_order_items AS i ON p.ID = i.order_id
INNER JOIN {$wpdb->prefix}woocommerce_order_itemmeta AS im ON i.order_item_id = im.order_item_id
WHERE p.post_status IN ( 'wc-" . implode( "','wc-", $statuses ) . "' )
AND pm.meta_key IN ( '_billing_email' )
AND im.meta_key IN ( '_product_id', '_variation_id' )
AND im.meta_value = $product_id
");
// Print array on screen
print_r( $customer_emails );
المنشورات ذات الصلة:
WooCommerce: تحقق مما إذا كان المستخدم قد اشترى المنتج
أين تضيف هذا المقتطف؟
يمكنك وضع مقتطفات PHP في الجزء السفلي من ملف function.php القالب الفرعي الخاص بك (احذف “؟>” إذا كان لديك هناك). من ناحية أخرى ، ينتقل CSS في ملف style.css الخاص بسمة الطفل. تأكد من أنك تعرف ما تفعله عند تحرير مثل هذه الملفات – إذا كنت بحاجة إلى مزيد من الإرشادات ، فيرجى إلقاء نظرة على الفيديو التعليمي المجاني الخاص بي “أين تضع تخصيص WooCommerce؟”
هل هذا المقتطف (لا يزال) يعمل؟
يرجى إعلامي في التعليقات إذا كان كل شيء يعمل كما هو متوقع. يسعدني مراجعة المقتطف إذا أبلغت بخلاف ذلك (يرجى تقديم لقطات شاشة). لقد اختبرت هذا الكود مع موضوع Storefront وإصدار WooCommerce المذكور أعلاه واستضافة صديقة لـ وورد بريس على PHP 7.3.
إذا كنت تعتقد أن هذا الرمز وفر لك الوقت والمال ، فلا تتردد في الانضمام إلى أكثر من 14000 مشترك في WooCommerce Weekly للحصول على تحديثات منشورات المدونة أو أكثر من 250 من مؤيدي Business Bloomer لمدة 365 يومًا من مزايا WooCommerce . شكرا لكم مقدما 🙂
هل تحتاج إلى مساعدة في WooCommerce؟
تحقق من دروس الفيديو المجانية هذه. يمكنك تعلم كيفية تخصيص WooCommerce بدون مكونات إضافية غير ضرورية ، وكيفية تكوين إعدادات البرنامج المساعد WooCommerce بشكل صحيح وحتى كيفية إتقان استكشاف أخطاء WooCommerce في حالة حدوث خطأ!