the tag page obtener get_the_tags codex actual php wordpress woocommerce orders woocommerce-subscriptions

php - tag - WooCommerce: obtenga suscripciones activas en una lista entre la fecha de inicio y finalizaciĆ³n



wordpress get the page id (1)

Aquí hay un ejemplo de una función que mostrará una lista de todas las suscripciones activas de una fecha a otra, en una tabla html formateada. En este ejemplo, obtendrá por cada suscripción: la ID de suscripción, la fecha, la ID del cliente y el nombre del cliente (Puede personalizar el código para obtener lo que desea).

Entonces esta función tiene 2 parámetros de fecha. Para el uso y las especificaciones, vea la sección al final.

El código de función:

function active_subscription_list($from_date=null, $to_date=null) { // Get all customer orders $subscriptions = get_posts( array( ''numberposts'' => -1, ''post_type'' => ''shop_subscription'', // Subscription post type ''post_status'' => ''wc-active'', // Active subscription ''orderby'' => ''post_date'', // ordered by date ''order'' => ''ASC'', ''date_query'' => array( // Start & end date array( ''after'' => $from_date, ''before'' => $to_date, ''inclusive'' => true, ), ), ) ); // Styles (temporary, only for demo display) should be removed echo "<style> .subscription_list th, .subscription_list td{border:solid 1px #666; padding:2px 5px;} .subscription_list th{font-weight:bold} .subscription_list td{text-align:center} </style>"; // Displaying list in an html table echo "<table class=''shop_table subscription_list''> <tr> <th>" . __( ''Number ID'', ''your_theme_domain'' ) . "</th> <th>" . __( ''Date'', ''your_theme_domain'' ) . "</th> <th>" . __( ''User ID'', ''your_theme_domain'' ) . "</th> <th>" . __( ''User Name'', ''your_theme_domain'' ) . "</th> </tr> "; // Going through each current customer orders foreach ( $subscriptions as $subscription ) { $subscription_id = $subscription->ID; // subscription ID $subscription_date = array_shift( explode( '' '', $subscription->post_date ) ); // Date $subscr_meta_data = get_post_meta($subscription->ID); $customer_id = $subscr_meta_data[''_customer_user''][0]; // customer ID $customer_name = $subscr_meta_data[''_billing_first_name''][0] . '' '' . $subscr_meta_data[''_billing_last_name''][0]; echo "</tr> <td>$subscription_id</td> <td>$subscription_date</td> <td>$customer_id</td> <td>$customer_name</td> </tr>"; } echo ''</table>''; }

Este código va en el archivo function.php de su tema (o tema) hijo activo o también en cualquier archivo de complemento.

USO (ejemplo) :

Deberá respetar este formato numérico de fecha: YEAR-MONTH-DAY

$from_date = ''2016-06-19''; // start date $to_date = ''2016-09-21''; // End date active_subscription_list($from_date, $to_date);

Esto mostrará una lista de todas las suscripciones activas del 2016-06-19 al 2016-09-21 ...

Este código está probado y funciona.

Estoy usando suscripciones de WooCommerce.

¿Cómo puedo obtener todas las suscripciones (con fecha de inicio y fecha de finalización) en una lista de una fecha específica a otra?

Ejemplo 01/09/2016 al 15/09/2016

Gracias