Simple Membership

Wordpress Plugin
Download latest - 4.2.0

Developers

wp.insider
mra13

Download Stats

Today 620
Yesterday 856
Last Week 4,200
All Time 622,773
Banner 772x250

A flexible, well-supported, and easy-to-use WordPress membership plugin for offering free and premium content from your WordPress site

The simple membership plugin lets you protect your posts and pages so only your members can view the protected content.

Unlimited Membership Access Levels

Set up unlimited membership levels (example: free, silver, gold etc) and protect your posts and pages using the membership levels you create.

User Friendly Interface for Content Protection

When you are editing a post or page in the WordPress editor, you can select to protect that post or page for your members.

Non-members viewing a protected page will be prompted to login or become a member.

Have Free and Paid Memberships

You can configure it to have free and/or paid memberships on your site. Paid membership payment is handled securely via PayPal. Membership payment can also be accepted using Stripe or Braintree payment gateways.

Both one time and recurring/subscription payments are supported for PayPal and Stripe.

You can accept one time membership payment via Braintree payment gateway.

There is also option to use PayPal smart button for membership payment.

You can enable email activation or email confirmation for the free memberships.

Membership Payments Log

All the payments from your members are recorded in the plugin. You can view them anytime by visiting the payments menu from the admin dashboard.

Developer API

There are lots of action and filter hooks that a developer can use to customize the plugin.

There is also an API that can be used to query, create, update member accounts.

Member Login Widget on The Sidebar

You can easily add a member login widget on the sidebar of your site. Simply use the login form shortcode in the sidebar widget.

You can also customize the member login widget by creating a custom template file in your theme (or child theme) folder.

Option to show a password visibility toggle option in the login form.

Documentation

Read the setup documentation after you install the plugin to get started.

Plugin Support

If you have any issue with this plugin, please visit the plugin site and post it on the support forum or send us a contact: https://simple-membership-plugin.com/

You can create a free forum user account and ask your questions.

Miscellaneous

  • Works with any WordPress theme.
  • Ability to protect photo galleries.
  • Ability to protect attachment pages.
  • Show teaser content to convert visitors into members.
  • Comments on your protected posts will also be protected automatically.
  • There is an option to enable debug logging so you can troubleshoot membership payment related issues easily (if any).
  • Ability to customize the content protection message that gets shown to non-members.
  • Ability to partially protect post or page content.
  • You can apply protection to posts and pages in bulk.
  • Ability to use merge vars in the membership email notification.
  • Membership management side is handled by the plugin.
  • Ability to manually approve your members.
  • Ability to import WordPress users as members.
  • Search for a member's profile in your WP admin dashboard.
  • Filter members list by account status.
  • Filter members list by membership level.
  • Can be translated to any language.
  • Hide the admin toolbar from the frontend of your site.
  • Allow your members to delete their membership accounts.
  • Send quick notification email to your members.
  • Customize the password reset email for members.
  • Use Google reCAPTCHA on your member registration form.
  • Use Google reCAPTCHA on your member login and password reset form.
  • The login and registration widgets will be responsive if you are using a responsive theme.
  • Ability to restrict the commenting feature on your site to your members only.
  • Front-end member registration page.
  • Front-end member profiles.
  • Front-end member login page.
  • Option to configure after login redirection for members.
  • Option to configure after registration redirect for members.
  • Option to configure after logout redirection for members.
  • Option force the members to use strong password.
  • Option to make the users agree to your terms and conditions before they can register for a member account.
  • Option to make the users agree to your privacy policy before they can register for a member account.
  • Option to automatically logout the members when they close the browser.
  • Ability to forward the payment notification to an external URL for further processing.
  • Option to configure whitelisting for user email addresses to allow registration only from specific email addresses or email domains.
  • Option to configure blacklisting for user email addresses to block registration from certain email addresses or email domains.

Language Translations

The following language translations are already available:

  • English
  • German
  • French
  • Spanish
  • Spanish (Venezuela)
  • Chinese
  • Portuguese (Brazil)
  • Portuguese (Portugal)
  • Swedish
  • Macedonian
  • Polish
  • Turkish
  • Russian
  • Dutch (Netherlands)
  • Dutch (Belgium)
  • Romanian
  • Danish
  • Lithuanian
  • Serbian
  • Japanese
  • Greek
  • Latvian
  • Indonesian
  • Hebrew
  • Catalan
  • Hungarian
  • Bosnian (Bosnia and Herzegovina)
  • Slovak
  • Italian
  • Norwegian
  • Mexican
  • Arabic
  • Czech
  • Finnish

You can translate the plugin using the language translation documentation.


Releases (59 )

Version Release Date Change Log
4.2.0 2022-11-23
  • Braintree SDK updated for the Braintree payment gateway.
  • Google reCAPTCHA enterprise option is now available as a free addon.
4.1.8 2022-10-24
  • Improved the view debug log operation to check if the file exists before trying to open the file. If the file doesn't exist, it will show a message to reset the debug file.
4.1.6 2022-08-20
  • Added a new action hook - swpm_front_end_edit_profile_form_submitted.
  • Added a new action hook - swpm_do_init_time_tasks_front_end.
  • Translation POT file has been regenerated.
  • Apostrophe characters will now be accepted in the name and address fields.
  • Fixed the validation error message positioning in the edit profile form when Force Strong Password option is enabled.
4.1.4 2022-07-15
  • PayPal smart checkout will pass the item name set in the payment button to PayPal's API.
  • The PayPal smart checkout transactions will try to find a member profile using the Transaction ID and show it in the Transactions tab (if found).
  • WooCommerce checkout integration will add the collected billing address to SWPM member record when available.
4.1.0 2022-05-17
  • Added the text 'Username or Email' to the language translation POT file.
  • Added a new action hook (swpm_front_end_registration_form_submitted) for when the front-end registration form is submitted
  • Added nonce check for the "Delete Transaction" action in the payments menu.
4.0.7 2021-10-07
  • Stripe sca subscriptions enhancement: restore the custom field value from the original webhook notification (when available).
  • Custom fields data (if available) is also saved in the swpm_transactions custom post type after a transaction.
  • Updated the Dutch language file.
  • Integration with the WP Express Checkout plugin.
  • WordPress 5.8 compatibility.
4.0.6 2021-07-07
  • Added an option in the [swpm_paypal_subscription_cancel_link] shortcode to allow opening the window in a new tab.
  • Added an option in the [swpm_paypal_subscription_cancel_link] shortcode to add CSS class for customization purpose.
  • Added a new shortcode to display the total number of members (just display the total number). This shortcode is available in the free Miscellaneous Shortcodes addon.
  • Fixed a calculation in the auto delete pending email activation data function. Thanks to @satoshi for pointing it out.
  • Spelling fixes for some of the description field and error messages. Thanks to @Ronaldo for pointing it out.
  • Regenerated the language translation POT file.
  • Updated the Spanish language file.
  • Updated the Czech language file.
4.0.5 2021-06-11
  • Added a new filter hook to allow overriding of the display_name field when adding a member via the admin interface.
  • Added a new filter hook to allow overriding of the account status value when a subscription renewal payment comes in. The filter name is: swpm_account_status_for_subscription_start_date_update
  • Added slovenian language translation file to the plugin.
  • The {membership_level_name} email merge tag will now work for the "Notify User" feature that can be used when editing a member's profile (from the admin dashboard).
  • Updated the Dutch translation file.
  • Fixed the positioning of the validation result message for the username field in the "Add New Member" interface.
4.0.1 2020-10-15
  • Added the "Button Image URL" field for the Stripe Buy Now type buttons (to allow button image customization).
  • The user role options for the "Admin Dashboard Access Permission" settings field will show the translated values.
  • The settings menu update capability will also respects the "Role" permission set in the "Admin Dashboard Access Permission" settings.
  • Added a check to see if an username exists in the create_wp_user() function.
  • Stripe SCA Subscription button configuration interface - renamed the label from "Stripe Plan ID" to "Stripe API ID" (to match with Stripe's recent interface changes).
4.0.0 2020-08-18
  • Removed the "Use WordPress Timezone" settings option from the advanced settings menu. This option can conflict with some events management type plugins.
  • The plugin will now record the date values according to your WordPress timezone settings (by default).
  • The debug log file will record timestamp values in the format ['Y/m/d H:i:s']. Example Value: [2020/07/24 11:58:39]
  • Added help text to the "Admin Dashboard Access Permission" field to explain that it should not be used with the "Disable Access to WP Dashboard" option.
  • Added a note for when a user enables conflicting options in the advanced settings.
  • Completed testing on WP 5.5 version.
3.9.9 2020-07-24
  • Added an enhancement to accept empty address value and force updating (when admin updates the address of a member profile from admin interface).
3.9.8 2020-07-16
  • Added a new action hook 'swpm_validate_login_hash_mismatch'
  • Ability to manually add a transaction record in the Payments menu of the plugin
  • Added a new feature to hide the registration from to logged-in members. The new option is available in the Advanced settings menu.
3.9.7 2020-06-11
  • Added minor improvements to the get_current_page_url() function to increase compatibility with some servers.
  • The mini login shortcode will also work with the "Enable Redirect to Last Page" feature from the after login redirection addon.
  • Updated the Japanese language translation file.
  • Minor Stripe SCA button related enhancements (added filter).
  • Stripe buy now transactions (One-time payments) will now have a link to the user "profile" in the "payments" menu.
  • Chinese language file name changed from zh_Hans to zh_HK.
3.9.5 2020-01-29
  • Added a new filter (swpm_mini_login_output). It can be used to override the [swpm_mini_login] shortcode's output.
  • The "Edit" link in the members menu has been renamed to "Edit/View" to make it more user-friendly.
  • Updated the German language file.
  • The members listing in the members menu can now be sorted by the "Access Starts" column.
  • Fixed an issue with Stripe SCA buttons whereby duplicate "incomplete" entries were being created. This started happening recently from a new change that Stripe made.
3.9.4 2020-01-15
  • Commented out call to date_default_timezone_set() function for WP5.3.
  • Updated some comments in the SwpmAjax class.
  • Added an extra content protection check for post preview URL.
3.9.2 2019-12-01
  • Spanish translation language files updated.
  • Added more debug logging statement in the IPN handling script for easier troubleshooting.
  • Fixed an issue with the new SCA stripe subscription cancellation webhook.
3.8.9 2019-09-14
  • Added a new feature in the email settings menu to allow disabling of the "Account Upgraded" email notification.
3.8.4 2019-07-23
  • More strings from the settings admin interface of the plugin are translatable.
  • The strong password validation error message is now translatable (if you are using this feature).
  • Minor enhancement in the PayPal IPN handling code.
  • Fixed an issue with some profile data not updating when password is also updated at the same time.
3.8.2 2019-07-01
  • Added membership level and account status filter in the member search function (Members menu of admin dashboard).
  • Updated the Polish language translation.
  • Added a filter hook in the get_current_page_url() function.
3.8.0 2019-05-26
  • Email activation's temporary data is now stored in an encrypted format.
  • Fixed email activation data leftovers removal in the DB.
  • Updated some translation strings.
3.7.9 2019-05-18
  • Added new shortcode [swpm_show_after_login_page_link] via the swpm misc shortcodes addon.
  • More characters are now allowed in the "username" field.
  • Fixed a minor bug with the plugin not finding the corresponding member's profile when a subscritpion is canceled.
3.7.4 2019-01-15
  • Stripe Subscription now considers plan trial period settings.
  • Added CSS class names to the fields in the admin add/edit members interface.
  • Added more translatable strings to the POT file.
  • WordPress 5.0 compatibility
3.7.0 2018-09-12
  • Added PayPal smart checkout button option. https://simple-membership-plugin.com/creating-paypal-smart-checkout-buttons-for-membership-payment/
  • Added a new filter hook swpm_edit_profile_form_before_username
  • Added a new filter hook swpm_edit_profile_form_before_submit
3.6.6 2018-07-23
  • Added a new feature to show a terms and conditon checkbox. Users must agree to your terms before they can register for an account. Useful for GDPR.
  • Added a new feature to show a privacy policy checkbox. Users must agree to your privacy policy before they can register for an account. Useful for GDPR.
  • Last login date of the members are now shown in the members listing page in the admin dashboard.
  • Added a feature in the tools menu of the plugin to re-create the required pages of the membership plugin.
  • Fixed a typo in the country name "Colombia".
3.6.2 2018-03-09
  • Added a new feature to enforce strong password on the password field. When this option is enabled in the advanced settings, the members will be required to use a strong password.
3.5.8 2017-11-24
  • Changed the "Edit Member" button text to "Save Data" in the admin member edit interface.
  • Added a new function to logout the user from the swpm system if the corresponding wp user session is logged out.
  • The company name field will now be shown in the edit profile form.
  • The stripe button configuration allows you to enable an option to collect billing address
  • The country field is now a dropdown option.
  • Added a filter hook for the paypal email address in the payment button.
3.5.7 2017-11-08
  • Added updated German translation file.
  • Fixed a permissions check bug (thanks to Neb).
  • Fixed a potential XSS vulnerability.
3.5.4 2017-08-20
  • Added a check for PHP5.4 to detect if a server is using very old version of PHP and show an appropriate warning message. This will prevent an error on server's using old PHP version.
  • Added a new feature in the paypal button configuration so you can specify a custom checkout page header/logo.
3.5.1 2017-08-01
  • Added a new action hook (swpm_before_login_request_is_processed) that can be used to check stuff before the login request is processed by the plugin.
  • Stripe button: zero-decimal currencies (like JPY) are no longer multiplied by 100.
  • Turned off autocomplete for the email input field in the registration and edit profile forms.
3.4.7 2017-06-04
  • There is a new feature for applying partial or section protection to posts and pages. This feature is available via a free addon.
  • Removed bundled jquery.tools18.min.js, switched to built-in WP jQuery UI.
  • Fixed a typo in the manage content protection menu tab.
  • Created a free addon for misc shortcodes.
3.4.6 2017-04-19
  • Added Arabic language translation to the plugin. The translation was submitted by Hanin Fatani.
  • Added an email tag {primary_address} that can be used in the notification email when address field is used in the form builder addon.
  • Removed the unnecessary $_SERVER["REQUEST_URI"] value from the post action.
  • Added reCAPTCHA support on the password reset form (for reCAPTCHA addon).
  • Added an option to specify a custom CSS class for Stripe and Braintree buttons to customize the button style. (The new shortcode parameter is "class").
3.4.5 2017-04-06
  • Added a new action hook that gets triggered when a member is added via the "Add Member" menu of admin dashboard.
  • The mailchimp addon will now add users to a list when added via the admin dashboard.
  • The paypal checkout custom field value will be encoded.
  • Fixed warning - Non-static method SimpleWpMembership::deactivate() should not be called statically.
3.4.3 2017-03-03
  • Improved the formatting for the content that appears before the "more" tag on a more tag protected post.
  • Added a new feature to disable wp dashboard access for non-admin wp users. You can find this option under the general settings tab.
  • Added Mexican language translation file. The translation was submitted by Enrique alfonso.
  • Re-added the local copy of the Spanish translation files (Someone submitted incorrect translation to the translate.wordpress.org site overwriting the good translation)
3.4.0 2017-01-03
  • Updated the Italian language file. Thanks to Nicol Monili for updating the translation.
  • Deleted the German language files from the plugin folder so it can pull the language from translate.wordpress.org
  • Improved the member search functionality when used with pagination.
  • Added more sanitization on the registration form.
  • Added a few utility functions to the membership level utility class.
  • Google reCAPTCHA addon updated to enable captcha on the login form.
  • Stripe Checkout: The plugin now sets the "receipt_email" parameter for Stripe checkout so a receipt gets sent from Stripe.
3.3.9 2016-12-23
  • Deleted the Spanish language files from the plugin folder so it can pull the language from translate.wordpress.org
  • WordPress 4.7 compatibility.
  • Regenerated the POT file.
  • The after login redirection now uses home_url() instead of site_url(). The URL also gets passed via a filter.
  • Added a new filter for the after logout redirection URL.
  • Renamed the swpm-ja_JP language filename to swpmp-ja
  • Added the Braintree payment gateway so you can accept membership payments using Braintree. Details in the following documentation: https://simple-membership-plugin.com/create-braintree-buy-now-button-for-membership-payment/
3.3.8 2016-12-04
  • The account renewal payment will take into account any remaining time (when the user's level is using a duration type expiry).
  • The members can now user their email address (instead of username) and password to log into the site. The username field of the member login form will accept either the email address or the username.
  • The set_user_role action hook will not be triggered by the plugin as the wp_update_user() function will take care of it automatically.
3.3.6 2016-10-24
  • Added a new option so the admin notification email content can be customized from the email settings menu of the plugin.
3.3.5 2016-09-27
  • Added nonce check on the edit profile form.
  • Added an extra check for the membership level data on the registration form.
  • Minimum WordPress version requirement updated to v4.0.
3.3.2 2016-09-16
  • You can now view a member's last accessed date and time value by editing the member's profile from the admin dashboard.
  • The "Registration Successful" message can now be customized using the custom messages addon.
  • The edit profile template file can now also be overridden using the swpm_load_template_files filter.
  • Updated the Dutch language translation file.
  • Added Estonian language translation file.
  • Updated the Stripe payment gateway library to the latest version.
3.3.1 2016-09-01
  • Added an option in the advanced settings menu to use the timezone value specified in your WordPress General Settings interface.
  • WordPress 4.6 compatibility.
3.3.0 2016-08-13
  • Updated the Hungarian language file.
  • Improved input sanitization.
3.2.7 2016-06-17
  • Added a new option in the plugin settings so you can specify other WP user role (example: editor) to be able to use/see the plugin's admin interface.
  • Added a "user profile delete" option in the admin profile edit interface of the plugin. Admins can use it to delete a user record while in the member edit interface.
  • Added a new option so the member registration complete email notification can be sent to multiple site admins.
  • Added Bosnian language translation file. The translation was submitted by Rejhan Puskar.
  • Updated the Japanese language file.
  • Updated the Dutch language file. Thanks to R.H.J. Roelofsen.
3.2.6 2016-06-10
  • Added Hungarian language translation file. The translation was submitted by Laura Szitar.
  • Improved the members menu navigation menu so the tabs are always visible (even when you go to the add or edit members screen).
  • Added 2 new action hooks (They are triggered when subscription is cancelled and when a recurring payment is received).
  • Improved the membership levels navigation menu tabs.
  • The "Edit Member" interface now shows the member ID of the currently editing member.
3.2.5 2016-05-16
  • Added a new feature to enable redirection to the last page after login (where they clicked the login link). This new option is available in the after login redirection addon. https://wordpress.org/plugins/simple-membership-after-login-redirection/
3.2.3 2016-04-25
  • Added a new option so you can configure a membership account renewal page in the plugin.
  • The account expiry message will include the renewal page link (if you configure the renewal page).
  • Removed login link from the comment protection message. You can customize the comment protection message using the custom message addon.
  • Updated the Russian language file. Thanks to @dimabuko for updating the language file.
  • Updated the Portuguese language file. Thanks to @Juan for updating the language file.
  • Added a new addon for better custom post type protection.
  • Made an improvement to the wp user delete function.
  • More tag protection check improvements.
  • Account with "inactive" status can also log into the site if the "Allows expired login" feature is enabled.
  • Updated the PayPal IPN validation code so it is compatible with the upcoming PayPal changes.
3.2.2 2016-04-19
  • New feature to only allow the members of the site to be able to post a comment.
  • Moved the "Allow Account Deletion" option to the Advanced Settings tab of the plugin.
  • Moved the "Auto Delete Pending Account" option to the Advanced Settings tab of the plugin.
  • WordPress 4.5 compatibility.
3.2.1 2016-04-13
  • Added a new filter (swpm_transactions_menu_items_per_page) that can be used to customize the number of items that is listed in the transactions menu.
  • Added more sorting option in the transactions table.
  • Added sanitization for the sort inputs in the member transactions table.
  • Fixed an issue with the auto delete pending account settings.
  • Changed admin heading structure from h2 to h1.
3.1.8 2016-02-26
  • Improved the members and payments menu rendering for smaller screen devices.
  • Added a utility function to easily output a formatted date in the plugin according to the WordPress's date format settings.
  • Fixed a bug in the wp username and email validation functionality. Thanks to Klaas van der Linden for pointing it out.
  • The membership password reset form has been restructured (the HTML table has been removed).
3.1.5 2016-01-10
  • Added a new shortcode [swpm_show_expiry_date] to show the logged-in member's expiry details.
  • The search feature in the members menu will search the company name, city, state, country fields also.
  • The subscription profile ID (if any) for subscription payment is now shown in the "payments" interface of the plugin.
  • Added new filter hook so additional fields can be added to the payment button form (example: specify country or language code).
  • Updated the language POT file.
3.1.1 2015-11-06
  • Fix for some special characters in the email not getting decoded correctly.
  • Updated the membership upgrade email header to use the "from email address" value from the email settings.
3.0.1 2015-07-31
  • Added a new CSS class to the registration complete message.
  • Added Portuguese (Portugal) language translation file. The translation was submitted by Edgar Sprecher.
  • Replaced mysql_real_escape_string() with esc_sql()
  • Members list in the admin is now sorted by member_id by default.
  • Added a new filter in the registration form so Google recaptcha can be added to it.
2.2.9 2015-07-04
  • Added a new feature to customize the password reset email.
  • Added a new feature to customize the admin notification email address.
  • Improved the help text for a few of the email settings fields.
  • Updated the message that gets displayed after a member updates the profile.
2.2.7 2015-06-26
  • Added Japanese language translation to the plugin. The translation was submitted by Mana.
  • Added Serbian language translation to the plugin. The translation was submitted by Zoran Milijanovic.
  • All member fields will be loaded in the edit page (instead of just two).
2.2.6 2015-06-08
  • Fixed an issue with the category protection menu after the class refactoring work.
  • Fixed the unique key in the DB table
2.2.4 2015-05-25
  • Fixed an issue with not being able to unprotect the category protection.
  • Minor refactoring work with the classes.
1.8.0 2014-10-13
  • Added a new feature called "more tag protection" to enable teaser content. Read the teaser content documentation for more info.
  • Added Portuguese (Brazil) language translation to the plugin. The translation was submitted by Rachel Oakes.
  • Added cookiehash definition check (in case it is not defined already).
1.6 2014-06-21
  • Added comment protection. Comments on your protected posts will also be protected automatically.
  • Added a new feature to hide the admin toolbar for logged in users of the site.
  • Bug fix: password reset email not sent correctly
  • Bug fix: page rendering issue after the member updates the profile.
1.5.1 2014-06-21
  • Compatibility with the after login redirection addon: http://wordpress.org/plugins/simple-membership-after-login-redirection/
1.5 2014-06-17
  • Fixed a bug with sending member email when added via admin dashboard.
  • Fixed a bug with general settings values resetting.
  • Added a few action hooks to the plugin.