We've seen a few common problems that site owners run into when using the s2Member plugin and we've compiled a list of common troubleshooting tips that should help you determine the cause of your issue.
Generally speaking, most problems seem to come from one or more of the following (probably in this order):
- Conflicting Plugins
- Conflicting Theme
- User Error
- Server Configuration
- Outdated Installation
- Corrupt or Missing Files
To determine which of these may be causing your issue, there are a few tests you can do. These tests rely on the fact that the latest version of s2Member has been confirmed to work on the latest version of WordPress with the default theme, and without other plugins.
Before we get into the troubleshooting tips, it's important to note that you should always have a backup of your WordPress installation. Please see WordPress Backups for more information.
If something goes wrong, you can always revert to the backup and start over. However, if there is no backup, it may be a lot harder to recover from a problem. Backups are very important.
To protect your s2Member settings and data during updates or reinstallations, make sure you have the Deactivation Safeguards enabled. WP Admin -› s2Member -› General -› Deactivation Safeguards
Plugins can cause trouble in any area of your WordPress installation.
To determine which plugin might be conflicting with s2Member and causing your issue, deactivate the other plugins one by one, checking after each if the problem went away with it.
If you deactivated all other plugins and the problem persists, then you can rule out a plugin conflict.
If you're using any Must-Use Plugins, remember to test deactivating those as well, moving them out of the /wp-content/mu-plugins/ directory.
If you find a plugin conflict, you can either notify the plugin author and request that the conflicting code is fixed, or you can replace the plugin with a similar one. Otherwise, you may decide that you don't really need that plugin and do without it.
Although not as common as plugin conflicts, themes are simpler to test, so you may want to start here.
To test if your theme is causing the problem, temporarily change it back to the default one (e.g. TwentyEleven) and then check if the problem persists.
If you find the theme at fault, you can fix it or switch to another one. To fix it you can ask its developer for it, do it yourself, or hire someone.
There's also the likely possibility that you've configured something wrong, which can happen to anybody, particularly when learning to use something new.
User error would be determined in ways specific to the problem so, instead of explaining each possible scenario in this article, I'll leave that to the person that's working with you on the problem.
If you have a question about how something works, please don't hesitate to ask in the forum for clarification.
This is less common, but common enough to mention it in this article.
There are many potential configuration issues so, to help you review yours, we've created a tool that will check for the most common problems. http://s2member.com/kb/server-scanner/
Please download it, extract the PHP file, and upload it to your WordPress directory via FTP. Then open the file in your browser. It will display a report indicating if there are any issues that need attention, along with suggestions on what to do about them.
Another test to help determine if the problem is related to the server is to install a new WordPress in different directory of the same server, add just s2Member and see if you can reproduce the problem there.
If you can reproduce the problem on your clean WordPress installation, then the problem is not related to other plugins or theme, but something that's common to both installations, probably the server. If you have another different server to test with, it'd be good to try the clean installation there too.
As new problems are found, features added, or things changed in WordPress, plugins and themes, new releases are made. Not keeping your installation up-to-date may cause you problems that have already been fixed in the newer versions.
The latest release of s2Member will work fine with the latest release of WordPress; we always test to make sure this is the case.
If you're running older versions of s2Member or WordPress, please update them to the latest release: first WordPress (if needed) and then s2Member (the Framework first, then the Pro addon if you're using it).
Keep in mind that the more versions you're behind, the more likely an update will break something. That's why it's best to update as soon as possible, so that each update only introduces a few changes at a time.
If you're nervous about things breaking when you update, you can create a copy of your live site and test things there first.
Corrupt or Missing Files
This is even less common, but worth including here because it does come up from time to time.
Sometimes one (or more) of the s2Member files is missing or corrupt, most likely due to a failed file transfer when you uploaded it to the server.
If you know what file would be related to the problem you're having, then you can browse for it via FTP to check that everything's okay with it.
A simpler thing, though, would be to delete the s2Member plugin folder and then upload it again. You can always download a fresh, working copy of the s2Member plugin from your account page.
Testing in a Development Environment
Troubleshooting problems in a live site could affect your visitors' experience. For that reason, you may want to consider setting up a development environment.
The safest way to test all of the things mentioned above is to create a separate WordPress installation on the same server, add s2Member, and then the same theme and other plugins you're using on the live site, trying to reproduce the problem after each addition.
It may seem like more work to install a new WordPress, but it's much less work than breaking the live site and then having to fix it while dealing with the traffic and customers.
Or, instead of a clean WordPress installation for your tests, you can make a copy of the live site (including content). Please see Running a Development Copy of WordPress for more information.