WooCommerce Get Product Info (ID SKU $) from $product object

As a WooCommerce developer, you might be needed to repeat numerous coding operations. Coding operations like ‘How to get ____ if you have the $product variable/object?’ can be repeated multiple times. However, this task is a bit time-waster at times. So, in this article, we will learn about WooCommerce Get product info ID SKU from product object.

Also, You might need to repeat coding for ‘How to get the Product SKU?’, or ‘How to get the product short description?’ at times. Moreover, it also includes shipping class, product stock level, price, regular price, sale price, tax class, etc. So, you might save your time by following the coding steps given further. 

One thing to note here is that you do not always have $product variables readily available. However, you can get it in other ways. 

For instance, if you have access to $product_id, you can find the $product object from $product_id. Similarly, if you have access to order or cart pages, then you can find the $product object from therein. These are two scenarios to learn about WooCommerce Get Product Info ID SKU from product object.

So, You get the product information after practicing the below scenarios. You can follow the relevant coding operations to get the requisite data. 

  1. You can access $product variable

In this type, hooks (do_action and apply_filters) uses additional arguments. These are then passed on to the function. If this lets you get the ‘$product’ object, then your work is done! On the other hand, you can utilize the ‘global $product’ within your function. 

This is how you can get the product information in both the cases:

// Get Product ID
  
$product->get_id();
  
// Get Product General Info
  
$product->get_type();
$product->get_name();
$product->get_slug();
$product->get_date_created();
$product->get_date_modified();
$product->get_status();
$product->get_featured();
$product->get_catalog_visibility();
$product->get_description();
$product->get_short_description();
$product->get_sku();
$product->get_menu_order();
$product->get_virtual();
get_permalink( $product->get_id() );
  
// Get Product Prices
  
$product->get_price();
$product->get_regular_price();
$product->get_sale_price();
$product->get_date_on_sale_from();
$product->get_date_on_sale_to();
$product->get_total_sales();
  
// Get Product Tax, Shipping & Stock
  
$product->get_tax_status();
$product->get_tax_class();
$product->get_manage_stock();
$product->get_stock_quantity();
$product->get_stock_status();
$product->get_backorders();
$product->get_sold_individually();
$product->get_purchase_note();
$product->get_shipping_class_id();
  
// Get Product Dimensions
  
$product->get_weight();
$product->get_length();
$product->get_width();
$product->get_height();
$product->get_dimensions();
  
// Get Linked Products
  
$product->get_upsell_ids();
$product->get_cross_sell_ids();
$product->get_parent_id();
  
// Get Product Variations and Attributes
 
$product->get_children(); // get variations
$product->get_attributes();
$product->get_default_attributes();
$product->get_attribute( 'attributeid' ); //get specific attribute value
  
// Get Product Taxonomies
  
$product->get_categories();
$product->get_category_ids();
$product->get_tag_ids();
  
// Get Product Downloads
  
$product->get_downloads();
$product->get_download_expiry();
$product->get_downloadable();
$product->get_download_limit();
  
// Get Product Images
  
$product->get_image_id();
$product->get_image();
$product->get_gallery_image_ids();
  
// Get Product Reviews
  
$product->get_reviews_allowed();
$product->get_rating_counts();
$product->get_average_rating();
$product->get_review_count();

2. You can access $product_id

Firstly, you need to perform the do_action or apply_filters to get the access to product ID. After that, you need to use the below coding to find the product object. Once done, you can follow the exact steps given above. You should follow these steps for WooCommerce Get Product Info ID SKU from product object in this scenario. 

// Get $product object from product ID
  
$product = wc_get_product( $product_id );
  
// Now you have access to (see above)...
  
$product->get_type();
$product->get_name();
// etc.
// etc.

3. You can access Order object or Order ID

You need to loop through the items present in the order to get the product information inside the order. After that, you can follow the steps given above. 

// Get $product object from $order / $order_id
  
$order = wc_get_order( $order_id );
$items = $order->get_items();
  
foreach ( $items as $item ) {
  
    $product = $item->get_product();
  
    // Now you have access to (see above)...
  
    $product->get_type();
    $product->get_name();
    // etc.
    // etc.
  
}

4. You can access Cart object

You need to loop through the items present in the cart to get the product information inside the cart. Once done, you can follow the steps given above. 

// Get $product object from Cart object
  
$cart = WC()->cart->get_cart();
  
foreach( $cart as $cart_item_key => $cart_item ){
  
    $product = $cart_item['data'];
  
    // Now you have access to (see above)...
  
    $product->get_type();
    $product->get_name();
    // etc.
    // etc.
  
}

So, You should follow these ideal scenarios for WooCommerce Get Product Info ID SKU from product object. 

Also Read, WooCommerce Get Order Info total items from $order Object

A Complete Guide on WooCommerce Add to Cart Plus & Minus Buttons