从 $product 获取WooCommerce商品的产品信息

作者猫斯基 2022-12-02 573 人读过

最新文章

已知 $product 对象

使用 Hooksdo_actionapply_filters)传递给函数的参数。如果可以使用 $product 对象。或者,可以在函数中声明 “global $product”。

当你获取到 $product 对象时,则可以使用下面的代码获取产品的各种信息。

$product->get_id(); (fixes the error: "Notice: id was called incorrectly. Product properties should not be accessed directly")
$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_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();
$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_weight();
$product->get_length();
$product->get_width();
$product->get_height();
$product->get_dimensions();
$product->get_upsell_ids();
$product->get_cross_sell_ids();
$product->get_parent_id();
$product->get_reviews_allowed();
$product->get_purchase_note();
$product->get_attributes();
$product->get_default_attributes();
$product->get_menu_order();
$product->get_category_ids();
$product->get_tag_ids();
$product->get_virtual();
$product->get_gallery_image_ids();
$product->get_shipping_class_id();
$product->get_downloads();
$product->get_download_expiry();
$product->get_downloadable();
$product->get_download_limit();
$product->get_image_id();
$product->get_rating_counts();
$product->get_average_rating();
$product->get_review_count();

// source: https://docs.woocommerce.com/wc-apidocs/class-WC_Product.html

已知 $product_id

$product = wc_get_product( id );
$product->get_type();
$product->get_name();

获取订单里的商品信息

如何获取 Order 里面的商品信息?在这种情况下,只需遍历订单中存在的所有项目,然后应用上述规则。

$order = new WC_Order( $order_id );
$items = $order->get_items();

foreach ( $items as $item ) {

    $product = wc_get_product( $item['product_id'] );

    // Now you have access to (see above)...

    $product->get_type();
    $product->get_name();
    // etc.
    // etc.

}

获取购物车里的商品信息

如何获取购物车内的商品信息?在这种情况下,只需遍历购物车中的所有商品,然后应用上述规则。

$cart = WC()->cart->get_cart();

foreach( $cart as $cart_item ){

    $product = wc_get_product( $cart_item['product_id'] );

    // Now you have access to (see above)...

    $product->get_type();
    $product->get_name();
    // etc.
    // etc.

}

本文由 猫斯基 转载发布。

转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。本网转载其他媒体之稿件,意在为公共提供免费服务。如稿件版权单位或个人不想再本网发布,可与本网联系,核实后将立即将其删除。 本文地址:https://www.maosiji.com/3041.html

转载地址:网络

关注我们

站长

WordPress迷