Events Made Easy › Forums › How do I … › Membership renewal
Tagged: Membership (automatic) renewal
- This topic has 30 replies, 3 voices, and was last updated 4 years, 8 months ago by Anonymous.
-
AuthorPosts
-
Fri 20 Dec 2019 at 21:22 #60628AnonymousInactive
Hi,
How does membership renewal work? Is automatic renewal possible (I see for example in Paytium that Mollie seems to support that). If not what would the procedure be?
Reason I’m asking is because of the following experiment I did: When I set “Stop membership” I see expired. If I then log in as a member and fill in the membership form again the member is added a second time. So now I have a duplicate in the members list.
Sat 21 Dec 2019 at 09:13 #60629FrankyKeymasterRenewel is not automatic. You can define automatic membership reminders and send them a payment url in that mail too of course, but the amount is not taken automatically from their bank account.
Sat 21 Dec 2019 at 13:44 #60630AnonymousInactiveOkay that sounds good. However I can’t find the documentation that describes how to do that.
I guess there is a shortcode that creates a payment link for a member and that when a member uses that link his account is renewed.
When that link would be used for example x days before expiration of the current subscribtion, would the payment link take into account from when the subscription renewal date must start?
When the link is used x days after the current subscribtion expires, when would the new subscribtion start? From the payment date or the expiration of the current subscription?
Sat 21 Dec 2019 at 15:53 #60631FrankyKeymasterThe reminders are sent based on the value of the “Reminder” setting when defining the membership. The content of the mail is defined by “Membership reminder email subject” and “Membership reminder email body”. Those can contain member placeholders that are described here: https://www.e-dynamics.be/wordpress/category/documentation/7-placeholders/7-14-members/
Sat 21 Dec 2019 at 21:06 #60632AnonymousInactiveSo I can do it by email, but in case the email gets in the spam or is accidentally deleted…is there a way to show it on a page or another way when the member with the expired membership visits the website? For example something like this:
[eme_if tag='#_IS_USER_MEMBER_OF{Student membership}' value='1'] content [/eme_if]
[eme_if tag='#_IS_USER_MEMBER_OF{Regular membership}' value='1'] content [/eme_if][eme_if tag='#_IS_USER_MEMBER_OF{Student membership}' value='0']
[eme_if2 tag='#_IS_USER_MEMBER_OF{Regular membership}' value='0']
Your membership status cannot be resolved. Please here to renew.
[/eme_if2]
[/eme_if]Sat 21 Dec 2019 at 21:17 #60633AnonymousInactiveI also went through all fields under the tab “Mail templates” and don’t see:
“Membership reminder email subject” and “Membership reminder email body”
Could you please let me know were I can find those
Sat 21 Dec 2019 at 21:25 #60634AnonymousInactiveOkay found the setting…I was looking in the wrong place.
Sat 21 Dec 2019 at 22:34 #60635AnonymousInactiveThe mails are working now, but #_CONTACTPERSON does not work in the mails. It was not in the list on the documentation pages, but I thought let’s give it a try, since memberships have a contact person. Maybe a nice to have to use in the mail signature.
Sat 21 Dec 2019 at 23:12 #60636FrankyKeymasterFair request, the next version will have that:
https://plugins.trac.wordpress.org/changeset/2216424/Sat 21 Dec 2019 at 23:33 #60637AnonymousInactiveThanks! Amazing how fast you always reply and make updates!
Could you also please let me know if I can do something like I mentioned in my reply at 21:06? Specifically the link I tried to create with #_PAYMENT_URL.
Sun 22 Dec 2019 at 11:22 #60638FrankyKeymasterI added 2 extra conditional placeholders for that:
#_IS_USER_MEMBER_EXPIRED{xx} and #_IS_USER_MEMBER_PENDING{xx}So if you want to present the link for an expired user, it would be something like this:
[eme_if tag='#_IS_USER_MEMBER_EXPIRED{Student membership}' value='0'] Expired, please use #_PAYMENT_URL [/eme_if] [eme_if tag='#_IS_USER_MEMBER_EXPIRED{Regular membership}' value='0'] Expired, please use #_PAYMENT_URL [/eme_if]
See this change:
https://plugins.trac.wordpress.org/changeset/2216478/Edit: this won’t be sufficient, the payment url needs a reference to the membership too. So more work is required
Sun 22 Dec 2019 at 12:56 #60639FrankyKeymasterThis extra change should help:
https://plugins.trac.wordpress.org/changeset/2216499/it introduces #_MEMBERSHIP_PAYMENT_URL, so the code for you would be:
[eme_if tag='#_IS_USER_MEMBER_EXPIRED{Student membership}' value='0'] Expired, please use #_MEMBERSHIP_PAYMENT_URL{Student membership} [/eme_if] [eme_if tag='#_IS_USER_MEMBER_EXPIRED{Regular membership}' value='0'] Expired, please use #_MEMBERSHIP_PAYMENT_URL{Regular membership} [/eme_if]
(to be tested of course 🙂 , so please give some feedback)
Tue 18 Feb 2020 at 15:12 #60879AnonymousInactiveHi Franky,
Sorry for this late reply. I had some other urgent sites work on. I finally got to implement this and unfortunately it shows the unprocessed tags in the frontend.
Could it be that this only works within the EME plugin and not when used in theme templates?
Tue 18 Feb 2020 at 15:24 #60880AnonymousInactiveThis is the code I’m using in my template:
$contentRegularMember = sprintf(“[eme_if tag='#_IS_USER_MEMBER_OF{Regular membership}' value='1'] %s [/eme_if]“, $content);
$contentStudentMember = sprintf(“[eme_if tag='#_IS_USER_MEMBER_OF{Student membership}' value='1'] %s [/eme_if]“, $content);
$contentMemberNotPaid = “[eme_if tag='#_IS_USER_MEMBER_EXPIRED{Student membership}' value='1'] #_FIRSTNAME your #_MEMBERSHIPNAME has expired, please use #_MEMBERSHIP_PAYMENT_URL{Student membership} [/eme_if]
[eme_if tag='#_IS_USER_MEMBER_EXPIRED{Regular membership}' value='1'] Your membership has expired, please use #_MEMBERSHIP_PAYMENT_URL{Regular membership} [/eme_if]“;$output = sprintf(‘%s %s %s’, $contentRegularMember, $contentStudentMember, $contentMemberNotPaid);
$output = do_shortcode($output);
echo $output;Also it’s very difficult to find a way to decide whether to show the payment link for the ‘Student membership’ and the ‘Regular membership’
The decision tree would preverably look something like:
if(membershipNeededToSeeContentOfThisPage == ACTIVE)
{
showContent()’
}
else if (userIsMemberOf(membershipName1))
{
show something like: “Hi ‘username’, your ‘membershipname’ has expired. Please use the following link to renew your subscription: ‘paymentlinkForThisUsersMembership’.”
}
else if (userIsMemberOf(membershipName2))
{
show something like: “Hi ‘username’, your ‘membershipname’ has expired. Please use the following link to renew your subscription: ‘paymentlinkForThisUsersMembership’.”
}
else
{
do something else like show a membership registration form
}Tue 18 Feb 2020 at 17:56 #60881FrankyKeymasterThe payment url only works in a eme context, since they require exact knowledge on the member. I think I can make these global too though …I just checked the code and the payment url is global already, but only for non-expired members and it contains an error (non-existing function call). I’ll fix that.
Concerning the logic: you can use nested eme tags, see the doc.Thu 20 Feb 2020 at 13:31 #60896AnonymousInactiveOkay looking forward to that update.
I also got an idea about this I wanted to share. Maybe this makes it easier to be more compatible with different kind of themes and make setting up access to content easier:
May it’s an idea to create some field for settings in the left column when editing a page or post. Like how you set a featured image and page attributes. Then for example a user could be shown a list of memberships and set checkmarks for the memberships to which the page content is visible. And/or maybe something like a custom field or something below the page editing area to setup messages for when content is not accessible due to membership restriction or expiration. A bit the way like Yoast SEO has a setup field/area below each page.
Well that’s quite an extension…but something that popped up my mind and thought worth sharing.
Thu 20 Feb 2020 at 13:42 #60897FrankyKeymasterWell, EME is currently designed to do real club-memberships, no actual page content protection just yet … it can be worked around by the [eme_if] tag, but I never went further down that road just yet.
Concerning the change: https://plugins.trac.wordpress.org/changeset/2246348/events-made-easy/trunk (it is bigger than normal, because I added an extra functionality to the membership too, so you can allow/disallow membership extensions).Thu 20 Feb 2020 at 16:47 #60900AnonymousInactiveHi Frank & Michel, I just wanted to add to this comment, would love to +1 for Michel’s idea. About checkbox for member content showing page/post if they have checked and part of membership. I know you didn’t originally intend this Franky, but I would love to see the functionality going this way also 🙂 Would be awesome! 🙂
Sat 22 Feb 2020 at 10:31 #60921FrankyKeymaster@michel-ter-stege : the next version will already have the option the limit page content to members of one or more memberships. I’ll add an option to set a custom message too, in case access is denied.
Wed 26 Feb 2020 at 15:49 #60935AnonymousInactiveThanks Franky! That makes controlling the content of pages and posts much easier! Looking forward to the next release.
Wed 26 Feb 2020 at 16:54 #60936FrankyKeymasterIt will be a setting per page, and no drip content yet (although that’s not difficult to add). Most plugins ask money for something like that, but I’m trying to keep the plugin free so we’ll see how this goes (I do need to pay for the site, domain name and such …)
Wed 26 Feb 2020 at 17:18 #60937AnonymousInactiveYeah regarding that: for every site I build I now let my customers know about your concept and send them a donation link and a reminder about how expensive some other plugins like paytium are :). Currently I have 2 sites in development using the EME plugin.
And I put a post-it on my desktop to make a donation myself…keep forgetting that…have to ask for the paypal account details…:)
You really have a very good plugin! Not so many plugins that extensive around that are free. Wouldn’t blame you if you can’t keep it free in the future.Tue 3 Mar 2020 at 11:29 #60968AnonymousInactiveHi Frank, I just saw the update and trying it now. Maybe I’m using it wrong, but currently it doesn’t seem to work. In the new fields I selected 2 memberships and in the custom message (very small field by the way, could that become a wysiwyg editor?) I tried the following: Access denied #_MEMBERSHIP_PAYMENT_URL{Student membership}.
When I visit the page I see the plain text and placeholder and also when I log in (as a paid member) I still see the message as plain text.
Tue 3 Mar 2020 at 11:33 #60969AnonymousInactiveI’ve a bit of an issue….I want to deselect all memberships for now, but always one will stay selected. How can I remove the restriction?
Tue 3 Mar 2020 at 13:19 #60970FrankyKeymasterCtrl-click on the one you selected. Then that should go away too.
I need to check if I replace placeholders there already, but generic ones would of course be nice to work.
And I initially made it a small text field, but it is only the first version 🙂
But the functionality should work, is that not the case then? Did you try with only one membership selected?Tue 3 Mar 2020 at 16:12 #60971FrankyKeymasterThe next version will allow generic placeholders in the access-denied message.
I’ll check later on concerning if it works for multiple events (or even works at all, but I did test that) and maybe switch the denied-message textbox to wysiwygTue 3 Mar 2020 at 20:14 #60972AnonymousInactiveOf course ctrl-click….thought about that just after posting :(.
I tested with 2 (that’s in my case all) memberships selected. Later retested with 1 membership selected. That worked fine.
A few things that came to my mind: when using the new functionality a custom message is great, but people of course would like to use that message on multiple or probably all pages. So for maintanance reasons of a website alone a single place to edit the custom message would be great. A person with php and WordPress knowledge would probably use a shortcode in the custom field and place the code in functions.php. In that case the generic placeholders would also end up in functions.php. Another way to go, maybe more friendly for users with less php and WordPress knowledge, is to define the messages inside the settings tabs of the plugin (like the email templates and form templates). Then at page level one could decide which template to use from a dropdownbox. What do you think?
Regarding what messages I would output in my use cases:
-Page visitor: message that it’s a members only page and a login form;
-Logged in not paid: message and a payment url (in my case the payment url is user dependent and not membership dependent. I gues that might differ for other websites);
-Logged in and paid: the content;
I hope this information is useful for you.Wed 4 Mar 2020 at 16:56 #60977FrankyKeymasterThe next version will be different:
– checkboxes for the memberships
– template selection only for the access denied message (so if you had custom text there, it will be gone)
– a new section in EME options (members) that allows you to set the access denied message by defaultThu 5 Mar 2020 at 12:22 #60985AnonymousInactiveJust tried the new release. Works great so far!
Did have to delete cache a few times. First time I lost styling of the page after the member logged in. So for others: when you make changes and see strange behavior: it might be cache.
Thu 5 Mar 2020 at 12:23 #60986AnonymousInactiveFor those interested. This is what I currently use as message:
<!– page visitor –>
[eme_if tag='#_IS_USER_MEMBER_OF{Student membership}' value='0'] [eme_if2 tag='#_IS_USER_MEMBER_OF{Regular membership}' value='0'][LOGIN_REDIRECT][/eme_if2] [/eme_if]<!– logged in as regular member and membership expired –>
[eme_if tag='#_IS_USER_MEMBER_EXPIRED{Regular membership}']<div style=’text-align: center’>Your membership has expired, please use this payment link to renew your membership.</div>[/eme_if]<!– logged in as student member and membership expired –>
[eme_if tag='#_IS_USER_MEMBER_EXPIRED{Student membership}']<div style=’text-align: center’>Your membership has expired, please use this payment link to renew your membership.</div>[/eme_if]Thu 5 Mar 2020 at 12:24 #60987AnonymousInactiveOh and the login redirect shortcode I added to functions.php. Looks like this:
function loginRedirect() {
if(!is_user_logged_in())
{
$permalink = get_permalink();
$loginlink = ‘/login/?redirect_to=’.$permalink;
wp_safe_redirect($loginlink);
exit;
}
}
add_shortcode(‘LOGIN_REDIRECT’, ‘loginRedirect’); -
AuthorPosts
- The forum ‘How do I …’ is closed to new topics and replies.