Esta entrada contiene una recapitulación de funciones para acceder y obtener toda la información del carrito de WooCommerce.
Acceder de forma rápida a cualquier dato del carrito de WooCommerce puede ahorrar tiempo en rebuscar en el código de tu tema o plugin para acceder a ese dato que necesitas.
Por ejemplo: obtener el total del carrito, los artículos del carrito, los cupones aplicados, el contenido total del carrito, el peso total, etc.
Este listado se orienta a los desarrolladores de plugins para WooCommerce, o bien que estén personalizando alguna función específica, dado que les será de utilidad.
Índice de contenidos
Si tienes acceso a la variable $cart
Las acciones y los filtros pueden usar parámetros adicionales, si permiten utilizar el objeto $cart todo se simplifica.
Tan solo tener en cuenta que si el objeto $cart está accesible, el objeto WC()->cart se trataría del mismo elemento, con la diferencia de que este último se le puede llamar de forma global en cualquier interfaz de WooCommerce.
En resumen:
$cart = WC()->cart;
Si no tienes acceso a $cart
Si no se tiene acceso directo al objeto $cart, puedes invocarlo a través de WC()->cart de forma global en cualquier página de tu WooCommerce.
La página del carrito utiliza este método, por ejemplo, para cargar el objeto del carrito, y tú también puedes hacerlo en cualquier lugar que necesites.
// Condicionales del carrito $cart (if) WC()->cart->is_empty() WC()->cart->needs_payment() WC()->cart->show_shipping() WC()->cart->needs_shipping() WC()->cart->needs_shipping_address() WC()->cart->display_prices_including_tax() // Obtiene los totales del carrito WC()->cart->get_cart_contents_count(); WC()->cart->get_cart_subtotal(); WC()->cart->subtotal_ex_tax; WC()->cart->subtotal; WC()->cart->get_displayed_subtotal(); WC()->cart->get_taxes_total(); WC()->cart->get_shipping_total(); WC()->cart->get_coupons(); WC()->cart->get_coupon_discount_amount( 'coupon_code' ); WC()->cart->get_fees(); WC()->cart->get_discount_total(); WC()->cart->get_total(); WC()->cart->total; WC()->cart->get_tax_totals(); WC()->cart->get_cart_contents_tax(); WC()->cart->get_fee_tax(); WC()->cart->get_discount_tax(); WC()->cart->get_shipping_total(); WC()->cart->get_shipping_taxes(); // Información de cada elemento del carrito foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) // Obtiene la dirección envío y facturación WC()->cart->get_customer()->get_billing_first_name(); WC()->cart->get_customer()->get_billing_last_name(); WC()->cart->get_customer()->get_billing_company(); WC()->cart->get_customer()->get_billing_email(); WC()->cart->get_customer()->get_billing_phone(); WC()->cart->get_customer()->get_billing_country(); WC()->cart->get_customer()->get_billing_state(); WC()->cart->get_customer()->get_billing_postcode(); WC()->cart->get_customer()->get_billing_city(); WC()->cart->get_customer()->get_billing_address(); WC()->cart->get_customer()->get_billing_address_2(); WC()->cart->get_customer()->get_shipping_first_name(); WC()->cart->get_customer()->get_shipping_last_name(); WC()->cart->get_customer()->get_shipping_company(); WC()->cart->get_customer()->get_shipping_country(); WC()->cart->get_customer()->get_shipping_state(); WC()->cart->get_customer()->get_shipping_postcode(); WC()->cart->get_customer()->get_shipping_city(); WC()->cart->get_customer()->get_shipping_address(); WC()->cart->get_customer()->get_shipping_address_2(); // Otra información WC()->cart->get_cross_sells(); WC()->cart->get_cart_item_tax_classes_for_shipping(); WC()->cart->get_cart_hash(); WC()->cart->get_customer();
Fuente: La entrada original la tienes en inglés en esta web










Deja tu comentario