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

/**
 * Datos de WooCommerce Memberships
 * 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_Memberships {

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

		$this->resultado = false;

		switch ($dato_shortcode) {

			case 'tabla_membresias':

				$activas = apply_filters ('wp_shortcodes_usuarios_membresias_activas', false);

				/**
				 * Si queremos que la tabla sólo muestre las membresías activas
				 *
				 * add_filter ('wp_shortcodes_usuarios_membresias_activas', '__return_true');
				 *
				 */

				if (!count ($membresias = ($activas ? wc_memberships_get_user_active_memberships ($user_id) : wc_memberships_get_user_memberships ($user_id)))) {

					$this->resultado = $activas ? __('No tiene ninguna membresía activa.', 'wp-shortcodes-usuario') : __('No tiene ninguna membresía.', 'wp-shortcodes-usuario');
					break;
					}

				$estados = wc_memberships_get_user_membership_statuses();
				$formato = get_option ('date_format');
				
				$this->resultado = sprintf ('<table class="shop_table shop_table_responsive my_account_orders my_account_memberships wp-shortcodes-membresias">
						<thead>
							<tr>
								<th class="membership-plan wp-shortcodes-membresias-plan">
									<span class="nobr">%s</span>
								</th>
								<th class="membership-start-date wp-shortcodes-membresias-inicio">
									<span class="nobr">%s</span>
								</th>
								<th class="membership-end-date wp-shortcodes-membresias-fin">
									<span class="nobr">%s</span>
								</th>
								<th class="membership-status wp-shortcodes-membresias-estado">
									<span class="nobr">%s</span>
								</th>
								<th class="membership-actions wp-shortcodes-membresias-acciones">
								</th>
							</thead>
							<tbody>', __('Plan', 'wp-shortcodes-usuario'), __('Inicio', 'wp-shortcodes-usuario'), __('Fin', 'wp-shortcodes-usuario'), __('Status', 'woocommerce'));

				foreach ($membresias as $membresia) {
							
					//print_r($membresia);

					$fecha_ini  = $membresia->get_start_date('timestamp');
					$f_ini_form = date_i18n ($formato, $fecha_ini + 86400); //Memberships muestra el día antes
					$fecha_fin  = $membresia->get_end_date('timestamp');
					$f_fin_form = date_i18n ($formato, $fecha_fin + 86400); //Memberships muestra el día antes
					$url_ver    = get_permalink (get_option ('woocommerce_myaccount_page_id')) . 'members-area/' . $membresia->plan_id . '/my-membership-content/';

					$this->resultado .= sprintf ('<tr class="membership">
						<td class="membership-plan wp-shortcodes-membresia-plan" data-title="%s">
							<a href="%s">%s</a>
						</td>
						<td class="membership-start-date wp-shortcodes-membresia-inicio" data-title="%s">
							<time datetime="%s" title="%s">%s</time>
						</td>
						<td class="membership-end-date wp-shortcodes-membresia-fin" data-title="%s">
							%s%s%s
						</td>
						<td class="membership-status wp-shortcodes-membresia-estado" data-title="%s">%s</td>
						<td class="membership-actions order-actions wp-shortcodes-membresia-acciones">
							<a href="%s" class="woocommerce-button button view">%s</a>
						</td>',
						__('Plan', 'wp-shortcodes-usuario'),
						$url_ver,
						$membresia->plan->name,
						__('Inicio', 'wp-shortcodes-usuario'),
						date ('Y-m-d', $fecha_ini),
						$f_ini_form,
						$f_ini_form,
						__('Fin', 'wp-shortcodes-usuario'),
						$fecha_fin ? '<time datetime="' . date ('Y-m-d', $fecha_fin) . '" title="' . $f_fin_form . '">' : '',
						$fecha_fin ? $f_fin_form : '-',
						$fecha_fin ? '</time>' : '',
						__('Status', 'woocommerce'),
						__($estados['wcm-' . $membresia->get_status()]['label'], 'woocommerce-memberships'),
						$url_ver,
						__('View', 'woocommerce')
						);
					}

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

			case 'membresias_activas':

				$membresias = [];

				foreach (wc_memberships_get_user_active_memberships ($user_id) as $membresia)
					//if ('active' == $membresia->get_status())
						$membresias[] = $membresia->plan->name;

				$this->resultado = count ($membresias) ? implode ($membresias, ', ') : __('No tiene membresías activas.', 'wp-shortcodes-usuario');
				break;

			case 'fecha_fin_membresia':

				$plan = get_field ('plan', $shortcode_id);

				if (wc_memberships_is_user_active_member ($user_id, $plan))
					foreach (wc_memberships_get_user_active_memberships ($user_id) as $membresia)
						if ($plan == $membresia->plan->slug)
							$this->resultado = ($fecha = $membresia->get_end_date('timestamp')) ? date_i18n (get_option ('date_format'), $fecha + 86400) : __('Sin fecha de fin', 'wp-shortcodes-usuario'); //Memberships muestra el día antes

				break;
			}

		return $this->resultado;
		}

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