Current File : /var/www/e360ban/wp-content/plugins/wp-shortcodes-usuarios/integraciones/subscriptions.php
<?php

/**
 * Datos de WooCommerce Subscriptions
 * copyright Enrique J. Ros - enrique@enriquejros.com
 *
 * @author 			Enrique J. Ros
 * @link 			https://www.enriquejros.com
 * @since 			1.0.0
 * @package 		WPShortcodesUsuarios
 *
 */

defined ('ABSPATH') or exit;

Class WP_Shortcodes_Usuarios_Subscriptions {

	public function __construct ($dato_shortcode, $user_id, $shortcode_id) {

		$this->resultado = false;

		switch ($dato_shortcode) {

			case 'tabla_suscripciones':

				if (!count ($suscripciones = wcs_get_users_subscriptions ($user_id)))
					break;

				$estados          = wcs_get_subscription_statuses();
				$formato          = get_option ('date_format');
				$url_mi_cuenta    = get_permalink (get_option ('woocommerce_myaccount_page_id'));
				$incluye_acciones = apply_filters ('wp_shortcodes_usuarios_suscripciones_acciones', true, $shortcode_id);

				/**
				 * Si no queremos que la tabla incluya la columna de acciones de la suscripción:
				 *
				 * add_filter ('wp_shortcodes_usuarios_suscripciones_acciones', '__return_false');
				 *
				 */

				$this->resultado = sprintf ('<table class="my_account_subscriptions my_account_orders woocommerce-orders-table woocommerce-MyAccount-subscriptions shop_table shop_table_responsive woocommerce-orders-table--subscriptions wp-shortcodes-suscripciones-tabla">
					<thead>
						<tr>
							<th class="wp-shortcodes-suscripciones-id"><span class="nobr">%s</span></th>
							<th class="wp-shortcodes-suscripciones-estado"><span class="nobr">%s</span></th>
							<th class="wp-shortcodes-suscripciones-ultimo"><span class="nobr">%s</span></th>
							<th class="wp-shortcodes-suscripciones-proximo"><span class="nobr">%s</span></th>
							<th class="wp-shortcodes-suscripciones-total"><span class="nobr">%s</span></th>
							<th class="wp-shortcodes-suscripciones-acciones"><span class="nobr">%s</span></th>
						</tr>
					</thead>
					<tbody>', __('Suscripción', 'wp-shortcodes-usuario'), __('Status', 'woocommerce'), __('Último pago', 'wp-shortcodes-usuario'), __('Próximo pago', 'wp-shortcodes-usuario'), __('Total', 'woocommerce'), $incluye_acciones ? __('Actions', 'woocommerce') : '');

				foreach ($suscripciones as $id => $suscripcion) {

					//print_r($suscripcion);

					if ($incluye_acciones) {

						$acciones = '';

						foreach (wcs_get_all_user_actions_for_subscription ($suscripcion, $user_id) as $key => $accion)
							$acciones .= sprintf ('<a href="%s" class="woocommerce-button button %s">%s</a> <a href="%sview-subscription/%s/" class="woocommerce-button button view">%s</a>', $accion['url'], $key, __($accion['name'], 'woocommerce-subscriptions'), $url_mi_cuenta, $id, __('View', 'woocommerce'));
						}

					$this->resultado .= sprintf ('
						<tr>
							<td class="subscription-id order-number woocommerce-orders-table__header woocommerce-orders-table__header-order-number woocommerce-orders-table__header-subscription-id wp-shortcodes-suscripciones-id" data-title="%s">
								<a href="%sview-subscription/%s/">#%s</a>
							</td>
							<td class="subscription-status order-status woocommerce-orders-table__header woocommerce-orders-table__header-order-status woocommerce-orders-table__header-subscription-status wp-shortcodes-suscripciones-estado" data-title="%s">%s</td>
							<td class="woocommerce-orders-table__header wp-shortcodes-suscripciones-ultimo" data-title="%s">%s</td>
							<td class="subscription-next-payment order-date woocommerce-orders-table__header woocommerce-orders-table__header-order-date woocommerce-orders-table__header-subscription-next-payment wp-shortcodes-suscripciones-proximo" data-title="%s">%s</td>
							<td class="subscription-total order-total woocommerce-orders-table__header woocommerce-orders-table__header-order-total woocommerce-orders-table__header-subscription-total wp-shortcodes-suscripciones-total" data-title="%s">%s</td>
							<td class="subscription-actions order-actions woocommerce-orders-table__cell woocommerce-orders-table__cell-subscription-actions woocommerce-orders-table__cell-order-actions wp-shortcodes-suscripciones-acciones" data-title="%s" style="text-align:left">%s</td>
						</tr>',
						__('Suscripción', 'wp-shortcodes-usuario'),
						$url_mi_cuenta,
						$id,
						$id,
						__('Status', 'woocommerce'),
						__($estados['wc-' . $suscripcion->get_status()], 'woocommerce-subscriptions'),
						__('Último pago', 'wp-shortcodes-usuario'),
						date_i18n ($formato, strtotime ($suscripcion->get_date('last_order_date_paid'))),
						__('Próximo pago', 'wp-shortcodes-usuario'),
						($fecha = $suscripcion->get_date('next_payment_date')) ? date_i18n ($formato, strtotime ($fecha)) : '-',
						__('Total', 'woocommerce'),
						wc_price ($suscripcion->get_total()),
						$incluye_acciones ? __('Actions', 'woocommerce') : '',
						$incluye_acciones ? $acciones : ''
						);
					}

				$this->resultado .= '</tbody></table>';
				break;

			case 'fecha_fin_prueba':

				$suscripciones = [];

				foreach (wcs_get_users_subscriptions ($user_id) as $id => $suscripcion)
						if ($fecha = $suscripcion->get_date('trial_end'))
							$this->resultado = date_i18n (get_option ('date_format'), strtotime ($fecha));

				$this->resultado or $this->resultado = __('No hay ningún periodo de prueba activo.', 'wp-shortcodes-usuario');
				break;

			case 'fecha_fin_suscripcion':

				foreach (wcs_get_users_subscriptions ($user_id) as $id => $suscripcion)
					$this->resultado = date_i18n (get_option ('date_format'), strtotime ($suscripcion->get_date('end')));

				break;

			case 'fecha_proxima_renovacion':

				$suscripciones = [];

				foreach (wcs_get_users_subscriptions ($user_id) as $id => $suscripcion)
					if ($fecha = $suscripcion->get_date('next_payment_date'))
						$suscripciones[] = strtotime ($fecha);

				$this->resultado = count ($suscripciones) ? date_i18n (get_option ('date_format'), min ($suscripciones)) : __('No hay suscripciones activas', 'wp-shortcodes-usuario');
				break;

			case 'cantidad_proximo_pago':

				$totales = [];

				foreach (wcs_get_users_subscriptions ($user_id) as $id => $suscripcion)
					if ($fecha = strtotime ($suscripcion->get_date('next_payment_date')))
						$totales[$fecha] = $suscripcion->get_total();

				$this->resultado = count ($totales) ? wc_price ($totales[min (array_keys ($totales))]) : '';
				break;
			}

		return $this->resultado;
		}

	}
Page Not Found
Parece que el enlace que apuntaba aquí no sirve. ¿Quieres probar con una búsqueda?
¡Hola!