شارك المقال

WooCommerce: احصل على معلومات الطلب (الإجمالي ، العناصر ، إلخ) من $ order Object

A VPN is an essential component of IT security, whether you’re just starting a business or are already up and running. Most business interactions and transactions happen online and VPN

بصفتي مستقلاً لتطوير WooCommerce ، أكرر كل يوم العديد من عمليات الترميز التي تجعلني أضيع الوقت. واحد منهم هو: ” كيف أحصل على ____ إذا كان لدي متغير / كائن الطلب $؟ “.

على سبيل المثال ، “كيف يمكنني الحصول على إجمالي الطلب “؟ أو “كيف يمكنني الحصول على عناصر الطلب “؟ أو ربما معرّف الطلب ومعرف العميل ومعلومات الفوترة وطريقة الدفع وإجمالي المبالغ المستردة وما إلى ذلك … نأمل أن تساعدك هذه المقالة في توفير الوقت أيضًا!

كما رأينا في مواد أخرى، الحصول على معلومات المنتج من $ الكائن المنتج و الحصول على عربة معلومات من $ عربة الكائن ، لا يمكن دائما أن يكون لديك إمكانية الوصول المباشر إلى متغير النظام $.

في بعض الأحيان ، قد يتوفر لديك $ order_id على سبيل المثال. في هذا السيناريو ، يمكنك “الحصول” على كائن الطلب باستخدام وظيفة wc_get_order WooCommerce.

من الممكن أيضًا الحصول على معلومات طلب $ إذا كنت في قالب بريد إلكتروني. يمكن أن يكون هذا مفيدًا في إظهار معلومات طلب الدولار الإضافية في اتصالات المعاملات الخاصة بك أو تشغيل وظائف مخصصة. في كلتا الحالتين ، استمتع!

1. لديك حق الوصول إلى $ order متغير

تستخدم الخطافات (do_action و application_filters) وسيطات إضافية يتم تمريرها إلى الوظيفة. إذا سمحوا لك باستخدام الكائن “$ order” ، فأنت تعمل. إليك كيفية الحصول على جميع معلومات الطلب:

// Get Order ID and Key
$order->get_id();
$order->get_order_key();
 
// Get Order Totals $0.00
$order->get_formatted_order_total();
$order->get_cart_tax();
$order->get_currency();
$order->get_discount_tax();
$order->get_discount_to_display();
$order->get_discount_total();
$order->get_fees();
$order->get_formatted_line_subtotal();
$order->get_shipping_tax();
$order->get_shipping_total();
$order->get_subtotal();
$order->get_subtotal_to_display();
$order->get_tax_location();
$order->get_tax_totals();
$order->get_taxes();
$order->get_total();
$order->get_total_discount();
$order->get_total_tax();
$order->get_total_refunded();
$order->get_total_tax_refunded();
$order->get_total_shipping_refunded();
$order->get_item_count_refunded();
$order->get_total_qty_refunded();
$order->get_qty_refunded_for_item();
$order->get_total_refunded_for_item();
$order->get_tax_refunded_for_item();
$order->get_total_tax_refunded_by_rate_id();
$order->get_remaining_refund_amount();
  
// Get and Loop Over Order Items
foreach ( $order->get_items() as $item_id => $item ) {
   $product_id = $item->get_product_id();
   $variation_id = $item->get_variation_id();
   $product = $item->get_product();
   $product_name = $item->get_name();
   $quantity = $item->get_quantity();
   $subtotal = $item->get_subtotal();
   $total = $item->get_total();
   $tax = $item->get_subtotal_tax();
   $taxclass = $item->get_tax_class();
   $taxstat = $item->get_tax_status();
   $allmeta = $item->get_meta_data();
   $somemeta = $item->get_meta( '_whatever', true );
   $product_type = $item->get_type();
}
 
// Other Secondary Items Stuff
$order->get_items_key();
$order->get_items_tax_classes();
$order->get_item_count();
$order->get_item_total();
$order->get_downloadable_items();
$order->get_coupon_codes();
  
// Get Order Lines
$order->get_line_subtotal();
$order->get_line_tax();
$order->get_line_total();
  
// Get Order Shipping
$order->get_shipping_method();
$order->get_shipping_methods();
$order->get_shipping_to_display();
  
// Get Order Dates
$order->get_date_created();
$order->get_date_modified();
$order->get_date_completed();
$order->get_date_paid();
  
// Get Order User, Billing & Shipping Addresses
$order->get_customer_id();
$order->get_user_id();
$order->get_user();
$order->get_customer_ip_address();
$order->get_customer_user_agent();
$order->get_created_via();
$order->get_customer_note();
$order->get_address_prop();
$order->get_billing_first_name();
$order->get_billing_last_name();
$order->get_billing_company();
$order->get_billing_address_1();
$order->get_billing_address_2();
$order->get_billing_city();
$order->get_billing_state();
$order->get_billing_postcode();
$order->get_billing_country();
$order->get_billing_email();
$order->get_billing_phone();
$order->get_shipping_first_name();
$order->get_shipping_last_name();
$order->get_shipping_company();
$order->get_shipping_address_1();
$order->get_shipping_address_2();
$order->get_shipping_city();
$order->get_shipping_state();
$order->get_shipping_postcode();
$order->get_shipping_country();
$order->get_address();
$order->get_shipping_address_map_url();
$order->get_formatted_billing_full_name();
$order->get_formatted_shipping_full_name();
$order->get_formatted_billing_address();
$order->get_formatted_shipping_address();
  
// Get Order Payment Details
$order->get_payment_method();
$order->get_payment_method_title();
$order->get_transaction_id();
  
// Get Order URLs
$order->get_checkout_payment_url();
$order->get_checkout_order_received_url();
$order->get_cancel_order_url();
$order->get_cancel_order_url_raw();
$order->get_cancel_endpoint();
$order->get_view_order_url();
$order->get_edit_order_url();
  
// Get Order Status
$order->get_status();

2. لديك حق الوصول إلى المتغير order_id $

إذا كان لديك حق الوصول إلى معرّف الطلب (مرة أخرى ، عادةً ما يمنحك do_action أو application_filters هذا) ، فعليك الحصول على كائن الطلب أولاً. ثم افعل نفس الأشياء كما هو مذكور أعلاه.

// Get $order object from order ID
  
$order = wc_get_order( $order_id );
  
// Now you have access to (see above)...
  
if ( $order ) {
   $order->get_formatted_order_total( );
   // etc.
   // etc.
}

3. لديك حق الوصول إلى متغير البريد الإلكتروني دولار

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

// Get $order object from $email
  
$order = $email->object;
  
// Now you have access to (see above)...
  
if ( $order ) {
   $order->get_id();
   $order->get_formatted_order_total( );
   // etc.
   // etc.
}

المنشورات ذات الصلة:

WooCommerce: بحث متقدم بالطلب

شرحت قاعدة بيانات WooCommerce: كيف تعمل وأين تجد البيانات

WooCommerce: كيفية طباعة الطلبات تلقائيًا

توضيح

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

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

أرسل تصحيح

شاركنا رايك وتقييمك للموضوع

{{ reviewsTotal }}{{ options.labels.singularReviewCountLabel }}
{{ reviewsTotal }}{{ options.labels.pluralReviewCountLabel }}
{{ options.labels.newReviewButton }}
{{ userData.canReview.message }}