变量$order获取WooCommerce订单信息

最模板 2022-04-15 10:51 WooCommerce教程
在WooCommerce我怎样才能得到订单总额或者我怎样才能得到订单物品或者可能是订单 ID、客户 ID、账单信息、付款方式、总退款等等,使用变量$order可以获取。可能有 $order_id 可用。在这种情况下,您可以使用 wc_get_order WooCommerce 函数“获取”订单对象。如果您在电子邮件模板中,也可以获得 $order 信息。这有助于在您的交易通信中显示额外的 $order 信息或触发自定义功能。
1. 您可以访问 $order 变量
钩子(do_action 和 apply_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();
 
// Get Thank You Page URL
$order->get_checkout_order_received_url();
2. 您可以访问 $order_id 变量
如果您有权访问订单 ID(同样,通常 do_action 或 apply_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. 您可以访问 $email 变量
如果您正在使用 WooCommerce 电子邮件,通常您会将 $email 对象用作参数。为了从中获取对象,您需要一个额外的步骤。然后做与上面完全相同的事情。
// 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.
}

相关文章

  1. 在WooCommerce产品页面上显示销售总数

    让客户知道产品的受欢迎程度确实有助于转化。一种方法是在产品页面上显示产品已售出的次数。WooCommerce 已经记录了产品的销售次数,因此在产品页面上显示这些数据非常容易。 woo...

    2022-07-10
  2. 为注销的用户重命名WooCommerce我的帐户菜

    在您的 WooCommerce 商店中,您可能会有一个指向我的帐户页面的菜单链接。通常,无论用户是否登录,此链接都会显示我的帐户。但是,如果我们想让它为注销的用户说一些更有用的东西...

    2022-07-10
  3. 按国家地区禁用WooCommerce支付网关

    如果您使用 WooCommerce 向多个国家/地区销售商品,您可能需要阻止来自某些国家/地区的客户使用特定的支付网关。例如,您可能只想向美国客户提供 PayPal。或者您可能希望阻止澳大利亚...

    2022-07-10
  4. 变量$order获取WooCommerce订单信息

    在WooCommerce我怎样才能得到订单总额或者我怎样才能得到订单物品或者可能是订单 ID、客户 ID、账单信息、付款方式、总退款等等,使用变量$order可以获取。可能有 $order_id 可用。在这种...

    2022-04-15
  5. 使用$product获取WooCommerce产品信息ID、S

    在WooCommerce中,使用变量$product 如何获取产品 SKU或者我怎样才能得到产品的简短描述或者可能是产品库存水平、运输等级、税收等级、价格、正常价格、销售价格等等.并非总是可以访问...

    2022-04-15
  6. 在WooCommerce列表页显示商品品牌

    安装好WooCommerce Brands 插件网站将显示品牌分类,商品也会出现品牌链接,但是商品列表页如何也显示商品品牌呢?仅将这些添加到单个产品页面中。 在woomcomerce当中添加以下代码: ad...

    2022-04-15
  7. 在 WooCommerce中自定义地址格式

    每个国家都有不同的地址格式,例如,美国使用缩写的州名,而澳大利亚通常显示完整的州名。这些不是一成不变的规则,它们总是可以改变的。如何 ? 通过当然是自定义代码: 此代码...

    2022-07-26
  8. 在WooCommerce单个产品图像上禁用缩放、灯

    如果WooCommerce您不销售具有大量细节的高端产品,您的客户可能不需要直接放大您的产品图像的能力。而且,如果您不上传高分辨率图像,那么缩放功能就毫无用处。这同样适用于灯箱和...

    2022-07-10
  9. 在WooCommerce添加产品视频代替图片

    WooCommerce 不允许您添加产品视频,但是我们可以用几行代码添加它,不需要第三方插件。 WooCommerce 产品图片用于说明您的产品,但有些产品需要视频才能更好地展示它们。在这里,我将...

    2022-04-04
  10. 在WooCommerce中重命名国家地区

    如果您想在WooCommerce中重命名一个国家/地区,只需向您的网站添加代码片段即可。以下示例将Ireland更改为Republic of Ireland: add_filter( woocommerce_countries, snippetpress_rename_countries );function sni...

    2022-07-10