-
-
Save cartpauj/be4c2eb63432e8a8942a8fa4cc321f3b to your computer and use it in GitHub Desktop.
<?php | |
if(class_exists('MeprUtils')) { | |
$user = MeprUtils::get_currentuserinfo(); | |
if($user !== false && isset($user->ID)) { | |
//Returns an array of Membership ID's that the current user is active on | |
//Can also use 'products' or 'transactions' as the argument type | |
$active_prodcuts = $user->active_product_subscriptions('ids'); | |
if(!empty($active_prodcuts)) { | |
foreach($active_prodcuts as $membership_id) { | |
// Do something | |
} | |
} | |
} | |
} |
I assume you found the solution to the expiry date but incase you havent I found this worked for me:
$user = MeprUtils::get_currentuserinfo(); $subscriptions = $user->active_product_subscriptions('transactions'); if(!empty($subscriptions)) { foreach($subscriptions as $s){ $expire = $s->expires_at; $expire = date('d/m/Y',strtotime($expire)); echo $expire; } } else { _ex('You have no active subscriptions to display.', 'ui', 'memberpress'); }
Thank you. with a bit of an adjustment of using any user id, perfect results.
Would be like this, the best way to associate products ids and related products names? Or what else? Anybody know?
$user = new MeprUser( $user_id );
//$active_products = $user->active_product_subscriptions(); // same as ('ids')
$active_products = $user->active_product_subscriptions('ids');
$products_titles = $user->get_active_subscription_titles('~');
$products_titles = explode('~',$products_titles);
$products_ids_titles_assoc_x_user = array_combine($active_products,$products_titles);
That return something like:
Array ( [11000] => Annual Membership - Auto Renewing [13000] => Monthly Membership – Manually Renewing )
$active_membership_ids = $user->active_product_subscriptions('ids');
$titles = array();
if(!empty($active_membership_ids)) {
foreach($active_membership_ids as $id) {
$membership = new MeprProduct($id);
$titles[] = $membership->post_title;
}
}
@cartpauj Thank you!
I was thinking to check for a different way, since mine was make me feel not secure: not sure if the result is ever correct the way of my snippet (if some order change for example). Anyway your seem to me that do not return the same like into mine, that should be something like:
Array ( [11000] => Annual Membership - Auto Renewing [13000] => Monthly Membership – Manually Renewing )
product ID => product Name
I assume you found the solution to the expiry date but incase you havent I found this worked for me: