setting s2member EOT conditionally
-
I use a function in s2-hacks.php (in my mu-plugins folder) to edit the EOT to a fixed date, depending on whether the member pays for 1 year, 2 years, or half a year. This is the function:
add_action('ws_plugin__s2member_pro_before_sc_paypal_form', 's2_hacks_eot_by_date'); function s2_hacks_eot_by_date($vars = array()) { if(isset($vars["attr"]["years"])) { $years = $vars["attr"]["years"]; global $current_user; $user = new WP_User($current_user->ID); $expire_half = strtotime ("2015-06-30"); $expire_one = strtotime ("2016-06-30"); $expire_two = strtotime ("2017-06-30"); if($years == '2') {update_user_option($user->ID, 's2member_auto_eot_time', $expire_two);} elseif($years == 'half') {update_user_option($user->ID, 's2member_auto_eot_time', $expire_half);} else {update_user_option($user->ID, 's2member_auto_eot_time', $expire_one);} unset($vars["attr"]["years"]); } return; }Members have been renewing their membership and their EOT times have been getting set at 6-30-2017 regardless of the membership length they select on the renewal page. Last year, this function seemed to work fine.
Also, I have the SAME code on a development/test site on my local server and the date is getting set consistently to 6-30-2016.
The renewal page shortcode is as follows:
[s2If current_user_can(access_s2member_level1)] [s2Member-Pro-PayPal-Form modify="1" ps="paypal" lc="" cc="USD" dg="0" ns="1" accept="paypal" accept_via_paypal="paypal" coupon="" accept_coupons="0" default_country_code="" captcha="0"] [s2Member-Pro-PayPal-Form level="5" ccaps="" desc="level 5 Membership - $75 USD / 1 Year" custom="mydomain.com|R|06-2016" ta="0" tp="0" tt="D" ra="75" rp="1" rt="Y" rr="0" rrt="" rra="2" years="1"] [s2Member-Pro-PayPal-Form level="5" ccaps="" desc="level 5 Membership - 2 Years @ $140" custom="mydomain.com|R|06-2017" ta="140" tp="2" tt="Y" ra="0" rp="1" rt="D" rr="0" rrt="" rra="2" years="2"] [s2Member-Pro-PayPal-Form level="6" ccaps="" desc="level 6 Membership - $50 USD / 1 Year" custom="mydomain.com|R|06-2016" ta="0" tp="0" tt="D" ra="50" rp="1" rt="Y" rr="0" rrt="" rra="2" years="1"] [s2Member-Pro-PayPal-Form level="6" ccaps="" desc="level 6 Membership - 2 Years @ $90" custom="mydomain.com|R|06-2017" ta="90" tp="2" tt="Y" ra="0" rp="1" rt="D" rr="0" rrt="" rra="2" years="2"] [s2Member-Pro-PayPal-Form level="1" ccaps="" desc="level 1 Membership - $50 USD / 1 Year" custom="mydomain.com|R|06-2016" ta="0" tp="0" tt="D" ra="50" rp="1" rt="Y" rr="0" rrt="" rra="2" years="1"] [s2Member-Pro-PayPal-Form level="3" ccaps="" desc="level 3 Membership - $50 USD / 1 Year" custom="mydomain.com|R|06-2016" ta="0" tp="0" tt="D" ra="50" rp="1" rt="Y" rr="0" rrt="" rra="2" years="1"] [s2Member-Pro-PayPal-Form level="3" ccaps="" desc="level 3 Membership - 2 Years @ $90" custom="mydomain.com|R|06-2017" ta="90" tp="2" tt="Y" ra="0" rp="1" rt="D" rr="0" rrt="" rra="2" years="2"] [s2Member-Pro-PayPal-Form level="4" ccaps="" desc="level 4 Membership - $50 USD / 1 Year" custom="mydomain.com|R|06-2016" ta="0" tp="0" tt="D" ra="50" rp="1" rt="Y" rr="0" rrt="" rra="2" years="1"] [s2Member-Pro-PayPal-Form level="4" ccaps="" desc="level 4 Membership - 2 Years @ $90" custom="mydomain.com|R|06-2017" ta="90" tp="2" tt="Y" ra="0" rp="1" rt="D" rr="0" rrt="" rra="2" years="2"] [/s2Member-Pro-PayPal-Form] [/s2If]If anyone has any suggestions A.S.A.P. I’d REALLY appreciate it. The site has hundreds of renewals that are taking place this week.
The topic ‘setting s2member EOT conditionally’ is closed to new replies.