' . "\n"; /**/ echo '
On a Multisite Blog Farm, this panel is ONLY visible to YOU, as a Super Administrator. s2Member automatically Safeguards everything on a Multisite Blog Farm. However, as the Super Administrator, you may turn this off; on a per-Blog basis. For example, if you\'re going to de-activate s2Member on this particular Blog, you can turn OFF the Safeguards below, so that s2Member will completely erase itself.
By default, s2Member will retain all of it\'s Roles, Capabilities, and your Configuration Options when/if you deactivate s2Member from the Plugins Menu in WordPress®. However, if you would like for s2Member to erase itself completely, please choose: No ( upon deactivation, erase all data/options ).
No ( upon deactivation, erase all data/options )
Yes, safeguard all data/options
Just like WordPress®, s2Member is open-source software. Which is wonderful. However, this also makes it possible for anyone to grab a copy of the software, and try to learn their way around its security measures. In order to keep your installation of s2Member unique/secure, you should configure a Security Encryption Key. s2Member will use your Security Encryption Key to protect itself against hackers. It does this by encrypting all sensitive information with your Key. A Security Encryption Key is unique to your installation.
Once you configure this, you do NOT want to change it; not ever. In fact, it is a VERY good idea to keep this backed up in a safe place, just in case you need to move your site, or re-install s2Member in the future. Some of the sensitive data that s2Member stores, will be encrypted with this Key. If you change it, that data can no longer be read, even by s2Member itself. In other words, don\'t use s2Member for six months, then decide to change your Key. That would break your installation.
' . esc_html (strtoupper (c_ws_plugin__s2member_utils_strings::random_str_gen (64))) . '
' . implode ('
', $GLOBALS["WS_PLUGIN__"]["s2member"]["o"]["sec_encryption_key_history"]) . '
If you\'re developing your site in a localhost environment, running something like WAMP/MAMP, or EasyPHP, please add this line to your /wp-config.php file: define("LOCALHOST", true);.
localhost
/wp-config.php
define("LOCALHOST", true);
This lets s2Member know definitively that your site is in a localhost environment. s2Member will adjust itself accordingly, maximizing functionality during your developement. s2Member can usually auto-detect this, but in cases where your localhost installation runs on something other than 127.0.0.1/localhost, you need to tell s2Member definitively, by adding that line to your /wp-config.php file. For instance, s2Member needs to know when your server IP is the same as all User IPs.
127.0.0.1/localhost
Once your site goes live, please remove the line. If you\'re already on a live server connected to the web, please ignore this section.
This is the name/address that will appear in outgoing email notifications sent by the s2Member plugin.
mailto:support@your-domain.com
' . esc_html (site_url ("/contact-us/")) . '
Conflict warning: You have another theme or plugin installed that is preventing s2Member from controlling this aspect of your installation. When the pluggable function wp_new_user_notification() is handled by another plugin, it\'s not possible for s2Member to allow customization of New User Emails. This is NOT a major issue. In fact, in some cases, it might be desirable. That being said, if you DO want to use s2Member\'s customization of New User Emails, you will need to deactivate one plugin at a time until this conflict warning goes away.
wp_new_user_notification()
This email is sent to all new Users/Members. It should always contain their Username/Password. In addition to this email, s2Member will also send new paying Customers a Signup Confirmation Email, which you can customize from your Dashboard, under: s2Member -> PayPal® Options. You may wish to customize these emails further, by providing details that are specifically geared to your site.
s2Member -> PayPal® Options
BuddyPress: please note that BuddyPress does NOT send this email to Users that register through the BuddyPress registration system. This is because BuddyPress sends each User an activation link; eliminating the need for this email all together. However, you CAN still customize s2Member\'s separate email to paying Members. See: s2Member -> PayPal® Options -> Signup Confirmation Email.
s2Member -> PayPal® Options -> Signup Confirmation Email
%%user_first_name%%
%%user_last_name%%
%%user_full_name%%
%%user_email%%
%%user_login%%
%%user_pass%%
%%user_ip%%
$_SERVER["REMOTE_ADDR"]
%%user_id%%
%%wp_login_url%%
%%date_of_birth%%
date_of_birth
%%street_address%%
street_address
%%country%%
country
%%etc, etc...%%
%%cv0%%
%%cv1%%
custom="' . esc_html ($_SERVER["HTTP_HOST"]) . '|cv1|cv2|cv3"
custom="' . esc_html ($_SERVER["HTTP_HOST"]) . '|christmas-promo"
This email notification is sent to you, each time a new User/Member registers.
"Name" <user@example.com>; admin@example.com; "Webmaster" <webmaster@example.com>
On the Main Site of a Multisite Network, the settings for Open Registration are consolidated into the s2Member -> Multisite (Config) panel.
s2Member -> Multisite (Config)
s2Member supports Free Subscribers ( at Level #0 ), along with four Primary Levels [1-4] of paid Membership. If you want your visitors to be capable of registering absolutely free, you will want to "allow" Open Registration. Whenever a visitor registers without paying, they\'ll automatically become a Free Subscriber, at Level #0.
Yes
The default Membership Levels are labeled generically; feel free to modify them as needed. s2Member supports Free Subscribers ( at Level #0 ), along with several Primary Roles for paid Membership ( i.e. Levels 1-4 ), created by the s2Member plugin.' . ((!is_multisite () || !c_ws_plugin__s2member_utils_conds::is_multisite_farm () || is_main_site ()) ? ' s2Member also supports unlimited Custom Capability Packages ( see s2Member -> API Scripting -> Custom Capabilities )' : '') . '. That being said, you don\'t have to use all of the Membership Levels if you don\'t want to. To use only 1 or 2 of these Levels, just design your Membership Options Page, so it only includes Payment Buttons for the Levels being used.
s2Member -> API Scripting -> Custom Capabilities
TIP: Unlimited Membership Levels are only possible with s2Member Pro. However, Custom Capabilities are possible in all versions of s2Member, including the free version. Custom Capabilities are a great way to extend s2Member in creative ways. If you\'re an advanced site owner, a theme designer, or a web developer integrating s2Member for a client, please check your Dashboard, under: s2Member -> API Scripting -> Custom Capabilities. We also recommend the s2Member Codex.
no
The button to the right, is a nifty tool, which allows you to reset s2Member\'s internal Roles and Capabilities that integrate with WordPress®. If you, or a developer working with you, has made attempts to alter the default internal Role/Capability sets that come with s2Member, and you need to reset them back to the way s2Member expects them to be, please use this tool. Attn Developers: it is also possible lock-in your modified Roles/Capabilities with an s2Member Filter. Please see this thread for details.
These settings customize your Standard Login/Registration Pages:( ' . esc_html (c_ws_plugin__s2member_utils_urls::wp_register_url ()) . ' )
The Main Site of a Multisite Blog Farm uses this Form instead, powered by your theme.( ' . esc_html (c_ws_plugin__s2member_utils_urls::wp_signup_url ()) . ' )
BuddyPress: BuddyPress will use its own Registration Form, powered by your theme.( ' . esc_html (c_ws_plugin__s2member_utils_urls::bp_register_url ()) . ' )
These settings are all focused on your Login/Registration Fonts.
These settings are all focused on your Login/Registration Background.
These settings are all focused on your Login/Registration Logo.
title=""
This field accepts raw HTML' . ((!is_multisite () || !c_ws_plugin__s2member_utils_conds::is_multisite_farm () || is_main_site ()) ? ' ( and/or PHP )' : '') . ' code.
Some fields are already built-in by default. The defaults are: *Username*, *Email*, *First Name*, *Last Name*.
*Username*, *Email*, *First Name*, *Last Name*
Custom Fields will appear in your Standard Registration Form, and in User/Member Profiles:( ' . esc_html (c_ws_plugin__s2member_utils_urls::wp_register_url ()) . ' )
The Main Site of a Multisite Blog Farm uses this Form. s2Member supports Custom Fields here too.( ' . esc_html (c_ws_plugin__s2member_utils_urls::wp_signup_url ()) . ' )
BuddyPress: BuddyPress will use its own Registration Form here.s2Member can integrate your Custom Fields with BuddyPress too, please see options below.
Name
yes
info,help,admin,webmaster,hostmaster,sales,support,spam
Please create and/or choose an existing Page to use as the first page Members will see after logging in.
BuddyPress: s2Member integrates with BuddyPress. Your Login Welcome Page affects BuddyPress too.
*Tip* This special Page will be protected from public access ( automatically ) by s2Member.
Welcome To Our Members Area
http://
Please create and/or choose an existing Page that showcases your Membership subscription options. This special Page is where you will insert the Payment Button(s) generated for you by s2Member. This Page serves as your lead-in signup page ( i.e. you\'ll give visitors one or more registration options here, and they\'ll be redirected to your Payment Gateway, to pay for the option they choose ).
Your Membership Options Page should detail all of the features that come with Membership to your site, and provide a Payment Button for each Level of access you plan to offer. This is also the Page that anyone could be redirected to ( by s2Member ), should they attempt to access an area of your site, which may require access to something they\'re NOT currenty allowed to view.' . ((!is_multisite () || !c_ws_plugin__s2member_utils_conds::is_multisite_farm () || is_main_site ()) ? ' For more on this advanced topic, please check your Dashboard here: s2Member -> API Scripting -> Membership Options Page / Variables.' : '') . '
s2Member -> API Scripting -> Membership Options Page / Variables
*Tip* If you allow Open Registration ( i.e. Free Subscribers ), you might want to place a link on your Membership Options Page, which points directly to your Registration Form, instead of routing a Customer through your Payment Gateway first. For further details, please check the section above: s2Member -> General Options -> Open Registration.
s2Member -> General Options -> Open Registration
BuddyPress: Even with BuddyPress, s2Member still needs a Membership Options Page. This is where your Payment Button(s) will go, giving people the ability to pay you. And again, this is also the Page that anyone could be redirected to ( by s2Member ), should they attempt to access an area of your site, which may require access to something they are currenty NOT allowed to view.' . ((!is_multisite () || !c_ws_plugin__s2member_utils_conds::is_multisite_farm () || is_main_site ()) ? ' For more on this advanced topic, please check your Dashboard here: s2Member -> API Scripting -> Membership Options Page / Variables.' : '') . '
*Tip* s2Member will NEVER allow this Page to be protected from public access.
Membership Signup
s2Member can be configured to redirect Members away from the default Profile Editing Panel that is built into WordPress®. When/if a Member attempts to access the default Profile Editing Panel, they\'ll instead, be redirected to the Login Welcome Page that you\'ve configured through s2Member. Why would I redirect? Unless you\'ve made some drastic modifications to your WordPress® installation, the default Profile Editing Panel that ships with WordPress®, is NOT really suited for public access, even by a Member.
So instead of using this default Profile Editing Panel; s2Member creates an added layer of functionality, on top of WordPress®. It does this by providing you ( as the site owner ), with a special Shortcode: [s2Member-Profile /] that you can place into your Login Welcome Page, or any Post/Page for that matter ( even into a Text Widget ). This Shortcode produces an Inline Profile Editing Form that supports all aspects of s2Member, including Password changes; and any Custom Registration/Profile Fields that you\'ve configured with s2Member.
[s2Member-Profile /]
Alternatively, s2Member also gives you the ability to send your Members to a special Stand-Alone version. This Stand-Alone version has been designed ( with a bare-bones format ), intentionally. This makes it possible for you to open it up in a popup window, or embed it into your Login Welcome Page using an IFRAME. Code samples are provided below.
BuddyPress: BuddyPress already provides Users/Members with a Profile Editing Panel, powered by your theme. If you\'ve configured Custom Registration/Profile Fields with s2Member, you can also enable s2Member\'s Profile Field integration with BuddyPress ( recommended ). For further details, see: s2Member -> General Options -> Registration/Profile Fields.
s2Member -> General Options -> Registration/Profile Fields
/wp-admin/
Shortcode ( copy/paste ), for an Inline Profile Modification Form:' . "\n"; echo '
Stand-Alone ( copy/paste ), for popup window:
/", c_ws_plugin__s2member_utils_strings::esc_ds (site_url ("/?s2member_profile=1")), file_get_contents (dirname (__FILE__) . "/code-samples/current-user-profile-modification-page-url-2-ops.x-php"))) . '" style="font-size:90%; font-family:Consolas, monospace; width:99%;" onclick="this.select ();" />
In a few special cases, long URLs generated by s2Member, containing encrypted authentication details, will be shortened; using one of the URL Shortening APIs ( listed below ). A shortened URL prevents issues with VERY long links becoming corrupted by a Customer\'s email application. For instance, the Signup Confirmation Email that s2Member sends out to a new paying Customer, may contain a link which is shortened to prevent corruption by email applications. By default, s2Member uses the tinyURL API, which has proven itself to be the most reliable. However, in cases where an API service call fails, s2Member will automatically use one or more of its other APIs as a backup. The option below, allows you to configure which URL Shortening API s2Member should try first ( i.e. the one you prefer ).
( i.e. GET request )
%%s2_long_url%%