If you are looking for a guide to creating and managing subscription products in a WooCommerce store, please refer to the Store Manager Guide instead.
This document provides a reference for a few utility functions in the WooCommerce Subscriptions code base relating to orders and the cart.
It is neither exhaustive nor instructive of when to use these functions. It is simply intended as a reference for a few public functions 3rd party code can use to interact with Subscriptions.
For a more comprehensive source of information in how Subscriptions interacts with WooCommerce orders and the cart, refer to the following source files:
wcs-order-functions.php
wcs-cart-functions.php
class-wc-subscriptions-order.php
class-wc-subscriptions-cart.php
wcs_order_contains_subscription()
↑ Volver al principioChecks a given order to see if it was used to purchase a WC_Subscription
object via checkout.
Usage
↑ Volver al principio<?php wcs_order_contains_subscription( $order, $order_type ) ?>
Parameters
↑ Volver al principio- $order
- (mixed) (required) The
WC_Order
object or ID of the order which should be checked. Default: None - $order_type
- (array|string) (optional) Can include ‘parent’, ‘renewal’, ‘resubscribe’ and/or ‘switch’. Defaults to ‘parent’.
Return Values
↑ Volver al principio- (bool)
True
if the order contains a subscription, otherwisefalse
.
wcs_get_subscriptions_for_order()
↑ Volver al principioGet all of the subscriptions (i.e. WC_Subscription
objects or a given order.
Usage
↑ Volver al principio<?php wcs_get_subscriptions_for_order( $order_id, $args ) ?>
Parameters
↑ Volver al principio- $order_id
- (mixed) (required) The
WC_Order
object or ID of the order to get the corresponding subscriptions for. - $args
- (array) (optional) A set of name value pairs to filter the returned value. Refer to the PHP DocBlock on
wcs_get_subscriptions_for_order()
for available fitlers.
Return Values
↑ Volver al principio- (array)
- Set of subscriptions in an array with the form
ID => WC_Subscription
form.
Cart Functions
↑ Volver al principioThe WC_Subscriptions_Cart
class is mostly dedicated to overloading its WC_Cart
counterpart and does not provide many functions intended to be used as public APIs. However, it does have one important function: WC_Subscriptions_Cart::cart_contains_subscription
.
WC_Subscriptions_Cart::cart_contains_subscription
↑ Volver al principioChecks the cart to see if it contains a subscription product.
Usage
↑ Volver al principio<?php WC_Subscriptions_Cart::cart_contains_subscription() ?>
Return Values
↑ Volver al principio- (bool)
True
if the cart contains a subscription product, otherwisefalse
.