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.

Cristián Lávaque


My Latest Replies (From Various Topics)

Viewing 25 replies - 1,526 through 1,550 (of 7,376 total)
Author Replies
Author Replies
Posted: Tuesday Apr 2nd, 2013 at 8:18 am #46369

Hi Phil.

Try encoding the URL to the thank-you page. http://meyerweb.com/eric/tools/dencoder/

http://ballisticpitching.com/?s2member_pro_clickbank_return=1&s2member_pro_clickbank_return_success=http%3A%2F%2Fballisticpitching.com%2Fthank-you%2F

About the user level, do you have Open Registration enabled? If so, disable it during tests to make sure that you can only register because the transaction went well and s2Member set the cookie or you used the access link in the Signup Confirmation email. [hilite path]Dashboard -› s2Member® -› General Options -› Open Registration[/hilite]

Enable logging, log out of your admin account, reload the salespage, and place a test order with the card ClickBank gives you so you get the transaction logged. I’d like to look at the log entries from it, please submit your site’s info. Let me know when you sent it. Thanks! s2Member® » Private Contact Form

Posted: Tuesday Apr 2nd, 2013 at 8:10 am #46368

Thanks for the kudos. :)

I had set everyting up in s2member pro prior to this change, do you think the upgrade changed all my api info? do I have to re-enter it?

I’m pretty sure that enabling DPRP would not change the credentials.

See in this article the different reasons why you may be getting that error code: http://web.archive.org/web/20121010191954/https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_nvp_errorcodes

For example, is your account verified? https://www.paypal.com/us/webapps/helpcenter/article/?solutionId=10568&m=SRE

Posted: Tuesday Apr 2nd, 2013 at 6:49 am #46362

You can give them any of the s2Member levels when you create their accounts.

About being sent to the Membership Options page: What restriction did the page they tried to open have? What level did the user have? Was he logged in to his account?

Posted: Tuesday Apr 2nd, 2013 at 6:29 am #46361

Hi Rob.

That error seems to be because of the PayPal email address.

Make sure you confirmed the email address in your PayPal account. https://www.paypal.com/us/webapps/helpcenter/article/?solutionId=12757&m=SRE

Did you entere the correct PayPal email address in s2Member? [hilite path]Dashboard -› s2Member® -› PayPal® Options -› Account Details[/hilite]

If you tried using the SandBox, make sure you didn’t mix the live and sandbox credentials. [hilite path]Dashboard -› s2Member® -› PayPal® Options -› Account Details[/hilite]

Let me know if that helps.

Posted: Tuesday Apr 2nd, 2013 at 6:05 am #46359

Right. The one that says “sp” is the Specific Post/Page access one. [hilite path]Dashboard -› s2Member® -› Authorize.Net® Pro Forms -› Specific Post/Page (Buy Now) Forms[/hilite]

Posted: Tuesday Apr 2nd, 2013 at 5:58 am #46357

Hi Rene.

There isn’t an integration for SagePay with s2Member. You could probably try creating your own using the PayPal IPN with Proxy Key. [hilite path]Dashboard -› s2Member® -› PayPal® Options -› PayPal® IPN -> IPN w/ Proxy Key[/hilite]

You can also look at the files for the payment gateways added by s2Member Pro to write your SagePay integration.

Posted: Tuesday Apr 2nd, 2013 at 5:30 am #46356

Ah, that’s probably because there are a couple of newlines ([hilite mono]\n[/hilite]) here: s2member-pro\includes\classes\remote-ops-in.inc.php

[hilite pre_code]
update_user_option($user->ID, "s2member_notes", trim(get_user_option("s2member_notes", $user->ID)."\n\n".(string)$op["data"]["s2member_notes"]));
[/hilite]
Posted: Tuesday Apr 2nd, 2013 at 4:01 am #46352

[hilite mono]s2member_paid_registration_time[/hilite] will return a timestamp, not number of days. In the conditional I wrote for you some replies ago, you’ll see I used [hilite mono]strtotime[/hilite].

If you want days, then try [hilite mono]S2MEMBER_CURRENT_USER_PAID_REGISTRATION_DAYS[/hilite]. [hilite path]Dashboard -› s2Member® -› API / Scripting -› Content Dripping[/hilite]

Posted: Tuesday Apr 2nd, 2013 at 3:42 am #46347

Thanks for the update. I’m glad you solved it. :)

Posted: Tuesday Apr 2nd, 2013 at 1:02 am #46341

I didn’t mean that exact hack, but to have an idea of how you can recognize when the pro-form was submitted to do something with the data. Based on that one, here’s an example closer to what you want you want:

[hilite pre_code]

Posted: Tuesday Apr 2nd, 2013 at 12:44 am #46339

Thanks.

In the IPN log I see this:

2 => ‘Unable to verify `$_SERVER[“HTTP_HOST”]`. Please check the `custom` value in your Button Code. It MUST start with your domain name.’,

But the button shortcode seems fine in the salespage. Do you have other buttons that aren’t created with the s2Member shortcode?

The CB account pass was wrong, but the other one you sent worked. The CB API key is set to read/write, but should be just read according to the setting in s2Member. [hilite path]Dashboard -› s2Member® -› ClickBank® Options -› Account Details -> API key[/hilite]

Make sure you use one of those shortcode buttons to test, and that you’re logged out of your account when you load the salespage to test. Let me know if the read access change to the API key helps.

Posted: Tuesday Apr 2nd, 2013 at 12:17 am #46338

By the way, it broke in more ways than I expected: today I sent someone to the membership site, expecting that the redirect would take her automatically to the sign-in page -but it didn’t.

Not sure what redirection you mean. When the user tries to view a restricted page and gets sent to the Membership Options page?

I admit I didn’t de-activate every single plugin, nor did I test with a clean installation of WP (I tried but I’m a rookie when it comes to IT, and I couldn’t finish it without finding hurdles I couldn’t surmount). The theme hasn’t really changed.

I did de-activate the one plugin that wasn’t there before S2Member “broke”.

I see. Well, to really rule out a conflict causing your problem, you’ll need to deactivate plugins and have the default theme… Since this is not always possible in a live site, that’s why it’s good to just install a clean WP in a separate folder to test and try to reproduce the problem.

This on top of the redirection problem with Paypal, and the fact that Google Buttons don’t work at all.

So you’ve integrated with PayPal and Google for payments? And are you using the s2Member shortcodes for their buttons?

Logging was enabled, but not the “full” one that allows debugging within WP itself. I did that now. However I wouldn’t be able to tell what on earth is happening by looking at the log.

You can submit your site’s info so I take a look at them. Please include the name of the page where you have the buttons too. Let me know when you sent it. Thanks! s2Member® » Private Contact Form

Posted: Tuesday Apr 2nd, 2013 at 12:10 am #46336

1. As I see it now, I think I should be able to do everything I want to do, using only Custom Capabilities and PHP Conditionals, not even bothering to do anything at a post-level nor even in Post Access Restrictions, right?

You’ll need levels for subscriptions, ccaps can only be sold with buy-nows.

2. One of the things I’m not quite clear about, is when to use /mu-plugins/some-file.php or my theme’s functions.php… Could you clarify that for me?

I just use must-use plugins, since they load sooner and are independent of the theme. Not sure if functions.php has an advantage, though.

Posted: Monday Apr 1st, 2013 at 11:55 pm #46334

I understand.

Well, s2Member will always try to protect the Login Welcome Page at Level 0, since it’s a page to be shown to a logged in user. So if you want to keep a page public, don’t se it as the Login Welcome Page.

If you want to show the user a profile, then you can point him to /wp-admin/profile.php, or create a new profile form with s2Member in a WP page. [hilite path]Dashboard -› s2Member® -› API / Scripting -› Member Profile Modifications[/hilite]

If you really need to redirect the user to the public profile page and leave it public, then you could customize your login link the [hilite mono]redirect_to[/hilite] variable, which will override the Login Welcome Page in s2Member. This video talks about that: Video » s2Member (Login Welcome Page Conflicts?)

Posted: Monday Apr 1st, 2013 at 11:48 pm #46332

Yes, I had the login info.

I see in the IPN log an error from over a week ago:

2 => ‘Unable to verify `$_SERVER[“HTTP_HOST”]`. Please check the `custom` value in your Button Code. It MUST start with your domain name.’,

But don’t see it happen again, so I’m guessing you fixed that already.

The latest entries don’t show errors. The very last one is a subscription, but by an existing user, so there’s no signup confirmation email sent, since that’s only sent for new paid signups.

What was the transaction that you say had the problem recently so I look for it specifically in the logs?

Posted: Monday Apr 1st, 2013 at 11:40 pm #46331

Ah ok. Well, I don’t know what complications it may cause in the future because it doesn’t follow the WP standard for the username, so keep that in mind if you need to debug a problem in the future.

Posted: Monday Apr 1st, 2013 at 11:35 pm #46330

I’m glad the formatting was all it took to make it work. Thanks for the update. :)

1. Is there a way to import new users and specify the ID number? For instance:

No, the WP ID is generated automatically, you can’t assign it when creating the user with the Import tool. For the member ID of your organization, I think it’d be best to have a custom profile field independent of the WP user management. [hilite path]Dashboard -› s2Member® -› General Options -› Registration/Profile Fields[/hilite]

Of course you could go and edit the database to change the user IDs to match the member ID, but I think it’d be best to keep them separate.

2. When I import these users, WP will set the registration date to the date of import, but of course each will have paid their annual fee before this time. I will need to store the membership expiry dates such that the user/member will be prompted to renew a month before expiry. Do I need to set the “Automatic EOT Time:” for this, and if so how can I set up automatic renewal prompts with links to Paypal?

There’s a column for the registartion date in the CSV, so you can set it there. The EOT time can be set too, but then it’ll ignore any subscription notifications from the payment gateway, if you have those. If you tie the profile to a gateway subscription, it’ll be best to leave the EOT time empty so it’s set when the gateway says the subscription ended.

3. Are there examples in the Codex or Forum of other web administrators who’ve had to import existing members and how they’ve gone about it?

This article: Knowledge Base » How to Migrate to s2Member Pro from Other Software

Posts by site owners about this may be in the forums, but I don’t remember any particular one that gives a step by step beyond what we’ve covered here already. If you have more questions, I’ll be happy to answer them as I can.

Posted: Monday Apr 1st, 2013 at 9:21 am #46271

Hi Tom.

It’s a WordPress thing. I tried creating a new user in WordPress with a space in the username, and it gave me this error:

Only lowercase letters (a-z) and numbers are allowed.

[hilite path]WP Admin -> Users -> Add New[/hilite]
Posted: Monday Apr 1st, 2013 at 6:57 am #46267

Ah, sorry, silly me, I forgot you are using ClickBank. Here: [hilite path]Dashboard -› s2Member® -› ClickBank® Options -› Thank-You Page Integration -> Customizations[/hilite]

And you’ll find this useful to encode the thank-you page’s URL for the [hilite mono]s2member_pro_clickbank_return_success[/hilite] variable: http://meyerweb.com/eric/tools/dencoder/

Posted: Monday Apr 1st, 2013 at 1:25 am #46258

Thanks for the update. I’m glad you solved it! :)

Posted: Monday Apr 1st, 2013 at 1:13 am #46257

Or I should probably clearify:

It works with the buttons generated by s2member.com. But I also want the regular IPN from paypal to work. So if I receive payments in any other way it creates the correct membership at my site.

When you use buttons not created with the s2Member shortcode for them, you need to add some values that s2Member needs. This article should help you with that: Knowledge Base » Using Buttons Generated @ PayPal.com

Posted: Monday Apr 1st, 2013 at 12:59 am #46255

I see in your CSV that the values are not properly quoted and the separators not commas. What are you opening/saving it with? I use OpenOffice Calc.

Try updating the user with this:

231,"harryhamster",,"Harry","Hamster","Harry Hamster","harry.hamster@rodents.com","http://www.harryhamster.org","subscriber",,"03/31/2013",,,,,,,"1 Rodent Road","Hamstertown","Rodentsville","Albania","Notts",1001,"IND","AB1 2CD"

Remember that if the first value has a user ID, s2Member will expect the user account to exist to update it. If you want to create a new user, leave the user ID field empty.

Posted: Monday Apr 1st, 2013 at 12:48 am #46254

Right, you’d use ccaps for the modules and a level for the subscription.

To do the combinations you want, you’ll need to use conditionals in the content instead of the level/ccap restrictions. [hilite path]Dashboard -› s2Member® -› API / Scripting -› Advanced PHP Conditionals[/hilite]

Posted: Monday Apr 1st, 2013 at 12:41 am #46252

Thanks for explaining it. I still am not sure, but I have a better idea of what you have happening.

When Open Registrations are disabled, s2Member will alllow registrations in two cases: the browser has a cookie set by s2Member after return from checkout, or the user used the special link sent in the Signup Confirmation.

I’ve had this weird behavior in my tests before, where I could register although registrations were closed and I hadn’t purchased. The reason, I found after investigating, was that I had an old cookie set in the browser from an old test and that I never registered an account with after checkout. The solution was to clean the cookies for the domain and then the behavior was normal. Could you try this?

The OTO purchase would not set a new cookie because the user is logged in when the page with the button/pro-form is loaded, so his user account will be referenced and it wouldn’t go towards a new signup.

Posted: Monday Apr 1st, 2013 at 12:34 am #46250

You can use the success attribute to show them your own custom thank-you page.
[hilite path]Dashboard -› s2Member® -› PayPal® Pro Forms -› Custom Return URLs Upon Success[/hilite]
[hilite path]Dashboard -› s2Member® -› PayPal® Buttons -› Shortcode Attributes -> success[/hilite]

Viewing 25 replies - 1,526 through 1,550 (of 7,376 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.