latest stable versions: v150827 (changelog)

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

Home Forums Bruce

Bruce

Staff Member

My Latest Replies (From Various Topics)

Viewing 25 replies - 1,676 through 1,700 (of 2,703 total)
Author Replies
Author Replies
Posted: Tuesday Mar 26th, 2013 at 7:54 pm #45825
Bruce
Username: Bruce
Staff Member

Thank you for your inquiry.

1. Does my product in ClickBank have to be approved and “live” before I can integrate it with S2Member?

2. If yes (my product does have to be live in Click Bank first), which payment link should I use for my ClickBank product application?

Yes. Your product needs to be set up and have a product ID to be able to use it with s2Member.

When you say “payment link” I’m assuming you’re talking about the payment link discussed in this article:

https://support.clickbank.com/entries/22806357-Creating-Your-First-Product

From this article:

Before you can start selling your product with ClickBank, it needs to be approved by ClickBank’s Business Services.


As for the link that you sell your product with, this is something that s2Member takes care of when you create the Button for Clickbank.

Posted: Tuesday Mar 26th, 2013 at 7:43 pm #45824
Bruce
Username: Bruce
Staff Member

Note that with Pro Forms, you can send Users to any place on your site after checkout, and that would be okay, as Users complete registration before being sent to PayPal.

See: Pre Sale FAQs » To use s2Member® Pro Forms, will I have to use PayPal® Pro?

Posted: Tuesday Mar 26th, 2013 at 7:42 pm #45822
Bruce
Username: Bruce
Staff Member

Thank you for your inquiry.

I’m still having trouble with the Success attriute sending customers to the registration page. Is there a better workflow? Right now, when I test it it goes to paypal and I pay and then it just gives me a register for a PayPal account… and there isn’t even a link to go back to register. Any ideas? PayPal IPN and PDT settings are in place

I’m unsure what you’re attempting to accomplish here. Could you clarify what the idea of having a User being sent back to the free registration page would accomplish?

s2Member’s success attribute with PayPal buttons (this is not true with Pro Forms), is meant to be used as a way to send Users to information to have them check the email associated with their PayPal account. This email has a link that contains a code specific to this User’s transaction, and a User can only register using this link after checkout.

Posted: Tuesday Mar 26th, 2013 at 7:36 pm #45820
Bruce
Username: Bruce
Staff Member
I have notified Jason about this. He’s looking into this, but has not been able to post a reply yet.
Posted: Tuesday Mar 26th, 2013 at 7:35 pm #45819
Bruce
Username: Bruce
Staff Member

Thanks for the follow-up.

I have tried this and it still gives me (date(‘Y’) + 1) even if the user is a “subscriber”. Where in the process, is EOT set/updated? Has the user role already changed from “subscriber” to “level1-user” at that time

The hooks you’re using are near the end of s2Member’s processes for modifications, after a User has been Modified. If you’re looking for hooks before a User is modified, try these:

ws_plugin__s2member_during_paypal_notify_during_before_subscr_modify
ws_plugin__s2member_during_paypal_notify_before_subscr_signup_w_update_vars
Posted: Tuesday Mar 26th, 2013 at 7:31 pm #45818
Bruce
Username: Bruce
Staff Member

Thank-you for your patience.

Based on the error message you are receiving (This XML file does not appear to have any style information associated with it), I believe this to be an invalid configuration in Amazon. There was a similar problem to yours here, where a User describes similar issues, and Jason discusses some information regarding this error:

http://www.s2member.com/forums/topic/download-links/page/2/#post-27447

If you are still experiencing issues after you have changed your bucket policy at Amazon, let us know here, and please send us a Dashboard login via Private Contact Form here:

s2Member® » Private Contact Form

Posted: Tuesday Mar 26th, 2013 at 7:13 pm #45817
Bruce
Username: Bruce
Staff Member

Thank you for your inquiry.

I am reviewing this thread now.

“Bumping” will not bring attention to a thread, as we get to threads in order of the time of last reply.
Posted: Tuesday Mar 26th, 2013 at 7:11 pm #45816
Bruce
Username: Bruce
Staff Member

Thank you for your inquiry. We appreciate your patience. :-)

I’ve put in a refresher request for this feature in a future version of s2Member. In the mean time, you will need to use s2Member’s Advanced PHP Conditionals to handle this. You should be able to do this with the WordPress get_current_site() function as well as s2Member’s current_user_can() function.

See: Dashboard -› s2Member® -› API / Scripting -› Advanced PHP Conditionals

You might do something like this:

<?php
$subsite = get_current_site();
if($subsite->ID === 12 && !current_user_can('access_s2member_ccap_test')) // Assuming you have a subsite with the ID of 12 that requires Custom Capabiliy "test"
wp_redirect( // ... Redirect to your Membership Options page
That’s about as far as we can go with custom code. If you need further assistance, we recommend http://jobs.wordpress.net, or another freelance web site where WordPress® experts are offering their expertise through a bid on your project.
Posted: Tuesday Mar 26th, 2013 at 2:53 pm #45808
Bruce
Username: Bruce
Staff Member

Thank you for your inquiry. We are very sorry for the delay in response.

You should be able to use this function from WordPress in conjunction with s2Member’s Advanced PHP Conditionals to accomplish this.

See: http://codex.wordpress.org/Plugin_API/Filter_Reference/show_admin_bar
See Also: Dashboard -› s2Member® -› API / Scripting -› Advanced PHP Conditionals

Posted: Sunday Mar 24th, 2013 at 6:52 pm #45608
Bruce
Username: Bruce
Staff Member

Thanks for the follow-up. We are very sorry for the delay in response.

I have checked that.. Logged in paypal manager, and it says I have PayFlow SDK/API Access -> Live. I have called paypal for confirming the same, and found that my paypal pro account supports payflow.
Now, I have configured S2member Payflow account details like this:

API Username = Merchant Login
Password = Password
API Partner = PayPal
API Vendor = Merchant Login

Your Merchant Login + Password are not required in these fields. You’re looking for your API Username here.

You can find full information on getting this information here: https://www.paypal.com/us/cgi-bin/webscr?cmd=xpt/cps/merchant/wppro/WPProIntegrationSteps-outside

Posted: Sunday Mar 24th, 2013 at 6:13 pm #45607
Bruce
Username: Bruce
Staff Member

Thank you for your inquiry.

-If the Pro Forms for subscriber modifications automatically cancel the original Paypal agreement and go with the new one (which I read in a few places), do the Buttons do the same thing? Trying to avoid the complication of using the Pro forms with Paypal Standard and needing Express Checkout and changing short codes and all of that.

Yes, all Subscription Modification Buttons and Pro Forms will overwrite the original PayPal Subscription.

-It would seem from what I read that a Buy Now button (for a year, say) is easier to manage in the long run than a recurring subscription (for a year) with EOT and such. Is that so?

This really depends on what you’re hoping to accomplish. Buy Now transactions do not require you to activate DPRP on your PayPal Account (which isn’t free). However, Users will not be automatically charged at the end of their agreement, and will need to extend access time manually.

Posted: Sunday Mar 24th, 2013 at 6:08 pm #45606
Bruce
Username: Bruce
Staff Member

Thank you for your inquiry.

I want to create two different sites using PayPal Express Checkout with s2Member Pro Forms, is it possible to use one PayPal account with my 2 websites? Do i have to use different PayPal accounts for each of the websites?

It is not necessary to have multiple PayPal accounts to use s2Member + PayPal.

From the docs
(Dashboard -› s2Member® -› PayPal® Options -› PayPal® IPN Integration -› More Information):

*Quick Tip* In addition to the default IPN settings inside your PayPal® account, the IPN URL is also set on a per-transaction basis by the special PayPal® Button Code that s2Member provides you with. In other words, if you have multiple sites operating on one PayPal® account, that’s OK. s2Member dynamically sets the IPN URL for each transaction. The result is that the IPN URL configured from within your PayPal® account, becomes the default, which is then overwritten on a per-transaction basis. In fact, PayPal® recently updated their system to support IPN URL preservation. One PayPal® account can handle multiple sites, all using different IPN URLs.

Posted: Sunday Mar 24th, 2013 at 5:57 pm #45603
Bruce
Username: Bruce
Staff Member

We are very sorry for the delay.

Thanks for the response. I’d like to make sure I understand the concept. When a user registers and our application generates a specific account page for that new user, for example, we could protect that page using a unique ccap. Did I get that right?

That’s correct. Assuming you use the information provided by Cristián in his above replys, this is what your end goal would be to accomplish.

Posted: Sunday Mar 24th, 2013 at 5:55 pm #45602
Bruce
Username: Bruce
Staff Member

send 3 fields ( F and L Name, email ) from buy now page to WP Dashboard as well as to payment gateway ( A.net ) for my case.

s2Member already passes these fields through Authorize.Net when a User signs up with a Authorize.Net Pro Form.

See: Dashboard -› s2Member® -› General Options -› Registration/Profile Fields

Posted: Friday Mar 22nd, 2013 at 6:06 pm #45530
Bruce
Username: Bruce
Staff Member

Thanks for the follow-up.

Unfortunately we can only tell you what’s happening, the source of the block is something your hosting provider will need to find.

Sorry about that :\

Posted: Friday Mar 22nd, 2013 at 6:04 pm #45528
Bruce
Username: Bruce
Staff Member

Thanks for the follow-up.

That’s interesting. Could you send Dashboard and FTP details for your server so we can take a look at what might be causing this?

See: s2Member® » Private Contact Form

Posted: Friday Mar 22nd, 2013 at 6:00 pm #45526
Bruce
Username: Bruce
Staff Member

Thank you for your inquiry.

Can you explain why your Users would want to pay through PayPal for access to your site without being able to log in? s2Member uses WordPress Roles and Capabilities to restrict access to content, and this requires that a User sign in.

Posted: Friday Mar 22nd, 2013 at 5:58 pm #45525
Bruce
Username: Bruce
Staff Member

Well, on my staging server, the EOT extension seems to be working now. It must be a localhost issue. However, I’m not receiving a confirmation email. I get the paypal receipt, but not the one from s2member.

Okay, thanks for the info.

Are you running any plugins alongside s2Member? If so, please disable these and try again. Make sure to check Spam and Junk email folders.

If your installation is still not sending emails from s2Member, please run this Server Check Tool, and enable logging of all kinds in Dashboard -› s2Member® -› Log Files (Debug) -› Logging Configuration.

Let us know if problems persist, and we will take a look.

Posted: Friday Mar 22nd, 2013 at 5:52 pm #45524
Bruce
Username: Bruce
Staff Member

Is there any unofficial way to fake an EOT command–essentially tricking the s2member application into demoting a user? Even if I have to fake a paypal EOT call to an authorize.net user account via CURL from my own ready-made PHP script?

As Jason said in his previous reply, s2Member does not receive info from Authorize.Net, and therefore does not look for this information. The only way to accomplish this would be to cancel the Subscription at Authorize.Net, and manually demote the User.

Jason said:

We do poll the Authorize.Net ARB system though, so with Subscriptions that are refunded and then terminated, that gets back to s2Member because of the termination; not because of the refund.

Posted: Friday Mar 22nd, 2013 at 5:48 pm #45523
Bruce
Username: Bruce
Staff Member

Yes, you’d use the WordPress gettext_with_context filter to do so. You can find info on how you’d do this in this article:

Knowledge Base » Changing Words/Phrases In s2Member®

Posted: Friday Mar 22nd, 2013 at 5:45 pm #45522
Bruce
Username: Bruce
Staff Member

Thanks for the follow-up. Sorry for the delay in response.

s2Member handles Level restrictions differently. If you’d like to do that, I’d personally recommend just updating a separate option in your installation, and hooking into the ws_plugin__s2member_check_specific_post_level_access to decide when to block access to a post based on this option. If, however, you’re hoping to do it just as s2Member does it, you’ll need to put the Post’s ID into one an s2Member global variable. You can find an example of a time s2Member does this in this file (line 57):

/s2member/includes/classes/meta-box-saves.inc.php
Posted: Friday Mar 22nd, 2013 at 5:33 pm #45521
Bruce
Username: Bruce
Staff Member

This still gives me “current year + one year” even if the user is demoted (level0). Maybe the hooks cant handle conditions? Do you know of others that have tried this?

These hooks can’t use the current_user_is() or current_user_can() conditionals because current User is not yet set in WordPress at this point. However, s2Member does pass you the User that it’s currently working with in the $vars array. You can do the following:

add_action ("ws_plugin__s2member_during_paypal_notify_during_subscr_signup_w_update_vars", "my_fixed_EOT_time_upd");
add_action ("ws_plugin__s2member_during_paypal_notify_during_subscr_modify", "my_fixed_EOT_time_upd");
function my_fixed_EOT_time_upd ($vars)
{
	if (user_is($vars["user_id"], 'subscriber')) { 
		$expire_on = strtotime ( date('Y') . '-12-31');
		update_user_option ($vars["user_id"], "s2member_auto_eot_time", $expire_on);
	
	} else { 
		$expire_on = strtotime((date('Y') + 1) . '-12-31');
		update_user_option ($vars["user_id"], "s2member_auto_eot_time", $expire_on);
	} 
}
Posted: Friday Mar 22nd, 2013 at 5:27 pm #45520
Bruce
Username: Bruce
Staff Member

Thank you for your inquiry.

s2Member’s Membership Levels are incremental, meaning that a User that’s registered at s2Member Level 2 would have access to content that you protect at s2Member Level 1, etc..

It is because of this fact that I’d recommend using Custom Capabilities rather than Membership Levels to protect access to your different packages of pages. You can have Users sign up (or create them) with Custom Capabilities, and protect Posts/Pages with Custom Capabilities just as you would with membership levels:

See: Dashboard -› s2Member® -› API / Scripting -› Custom Capabilities

Posted: Friday Mar 22nd, 2013 at 5:23 pm #45519
Bruce
Username: Bruce
Staff Member

Thanks for the follow-up.

I’m not seeing anything that’s jumping out at me in your logs. We’d need to run test transactions on your installation of s2Member and see your unedited logs to be able to find the problem here.

Could you please give us a Dashboard login via Private Contact Form?

See: s2Member® » Private Contact Form

Posted: Friday Mar 22nd, 2013 at 4:28 pm #45518
Bruce
Username: Bruce
Staff Member

Thank you for reporting this important issue.

I can confirm that the hack provided in Adding A Sortable EOT User Column still work correctly as of March 22, 2013 clean installations of WordPress 3.5.1, including a Multisite environment.

The installation of the hack only requires you to put the PHP in the article into a Must-Use Plugin. If you are not seeing the EOT column, I would recommend checking that that column is enabled in your Screen Options at the top right of the Users list.

Viewing 25 replies - 1,676 through 1,700 (of 2,703 total)

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

Contacting s2Member: Please use our Support Center for bug reports, pre-sale questions & technical assistance.