NOTE: This content is for advanced users only, who understand the concept of user tables, database, etc. If you don’t understand any of this, then just ignore this – you don’t really need to know this in order to use DAP. This is only an explanation for those who wish to go under the hood of DAP and its integration with WordPress.
As you probably already know, WordPress has its own user database.
DAP has its own User database, and doesn’t use the WordPress database – for many reasons, not limited to the following…
1) Ability to store more user information than what WordPress allows
2) More powerful user search, profile updates, affiliate information, etc.
So, if you want to use any WordPress based plugins – like WordPress Forums or Subscribe2Blog – these forums are looking at WordPress’ native user database.
Now comes the necessity of “syncing” the DAP user data and your WordPress user data.
In the DAP Dashboard, in “Setup > Config > Advanced“, you will see two settings for syncing DAP & WP user data.
If you turn this to “Y” (for “Yes”), then every time someone logs into DAP, their DAP user data (just name and email) is automatically “synced” with WordPress user data. If you set this to “N”, then no data will be transferred from DAP to WordPress.
This one matters only if you have set (1) above to “Y”.
If you want only your “PAID” members to be synced with WordPress, then set this to “Y“.
If you want both “FREE” and “PAID” members synced with WordPress, then set this to “N“.
Here’s how it actually works:
That’s all there is to it.
Also see: Forum Integration
DAP allows you to create an opt-in form to directly sign-up users to your Product (which also acts as a “list” if you only want to drip or broadcast emails).
This is very similar to creating a sign-up form at Aweber or 1ShoppingCart, and allowing people to directly sign up by entering just their First Name & Email Id.
In the DAP Admin menu, go to Products > Manage , and pick the product for which you wish to create the free signup form
1) Set “Allow Free Signup” to “Y” and then first save the product.
2) Once product is saved and page reloads, now click on the first link that says Generate ‘Free Signup Form Code’ link.
(NOTE: This is for advanced DAP users only: Second one (that says w/ Coupon) generates the free signup form code along with an extra field for entering a coupon code – use this if you want the person signing up to also enter a coupon code before they can sign up for the product – you must have previously created the Coupon code under “Payment Processing > Coupons” page.
3) That will bring up a little pop-up that will have the HTML for the signup form.
4) The form looks something like this:
<form name=”dap_direct_signup” method=”post” action=”http://www.YourSite.com/dap/signup_submit.php”>
<table>
<tr><td>First Name: </td> <td><input type=”text” name=”first_name” size=”10″></td></tr>
<tr><td>Email:</td> <td><input type=”text” name=”email” size=”10″></td></tr>
<tr> <td colspan=”2″><input type=”submit” name=”Submit” value=”Sign Up”></td></tr>
</table>
<input type=”hidden” name=”productId” value=”1″>
<input type=”hidden” name=”redirect” value=”http://YourSite.com/login/?msg=SUCCESS_CREATION““>
</form>
Copy and Paste the above form into any HTML page, or WordPress Page or Post where you want the free sign-up form to appear.
The form already has all the code required to add the user to your member database, with “Free” access to the Product (for which you generated the HTML code)
That’s it!
We also allow the following additional fields to be accepted via the direct signup form:
first_name, last_name, user_name, email, address1, address2, city, state,zip,country, company,phone,fax,title,paypal_email
Take the direct signup form code from the dap products page, and to that, you can add additional attributes with the following names:
For ex:
If you want to accept the user’s paypal email address, the just that to the form code above:
<tr>
<td>Paypal Email:</td>
<td><input type=”text” name=”paypal_email” size=”10″></td>
</tr>
This form can be published on any web site – can be completely different from the site where DAP is installed. Please note that the above form submits to the url “http://www.YourSite.com/dap/signup_submit.php” – so doesn’t matter which site this form is published on, the user is always added to the site where DAP is installed, which is http://www.YourSite.com.
If you note the text in bold in the above form (reproduced below)…
<input type=”hidden” name=”redirect” value=”http://YourSite.com/login/?msg=SUCCESS_CREATION“>
… you’ll see that the default form redirects to the page http://YourSite.com/login/?msg=SUCCESS_CREATION (which is the login page from your Setup > Config) and on that page, displays on the message “Success! Your membership account has been created. Check your email addresss in a few minutes for your password”.
In the form, you can modify the field in the form named “redirect” to any URL of your choice. Here are some examples:
<input type=”hidden” name=”redirect” value=”http://www.SomeOtherNonDAPSite.com/thankyou.html“>
OR
<input type=”hidden” name=”redirect” value=”http://www.YourSite.com/2010/12/31/thank-you“>
1) Add new user
2) Go to “Users > Manage”, search for user (that you wish to make an Admin) by email id or last name. User is displayed in search results.
3) Click on user’s “Full Name” – it will bring you to their profile page where you can edit their user information
4) Change “Account Type” field to “Admin”
5) Click “Update User” button
Start from step (2) above
That’s it.
NOTE: These newly created admins will have the exact same access and privileges as you do (as the ‘original’ admin who created these other admins). They can do whatever you can do – add/delete/modify users, products, access reports, change affiliate info, etc. They can do ANYTHING that you can do in the Admin Dashboard. Just be aware of that.
DAP currently integrates with all WordPress-based Forum plugins (some of them mentioned below) as well as two non-WP based (vB & XenForo).
So if a member logs in to your membership site via the DAP login form, then they will also automatically be logged in to your forum. That’s called “Single Sign-on” and DAP supports it with all of the above forum software.
The WordPress-based forums listed above (Simple:Press, Mingle, etc) are not really full-featured (like XenForo or vBulletin). DAP doesn’t – and cannot – protect individual forum posts or threads if you used the basic WordPress-based forums. But they’re all free, have pretty decent forum features, easy to set up and use, and will work just fine for most people.
However, if you want a more full-featured forum software that will give you greater control over many details, allow you to protect content at a thread or forum level, and want tons of user and admin features, then we highly recommend going with XenForo (XF) or vBulletin (vB). XF and vB are not free, have a slightly bigger learning curve than the simple WP forum plugins, and require more setup and maintenance overall. And if you want the best forum plugin, and are willing to pay the price (dollar-wise as well as effort-wise) and put in the time to set it up, then XF is the way to go, and DAP integrates extremely well with XF.
Now, the rest of this post is about integration of DAP with the WordPress-based forums.
(For XenForo integration details, click here)
(For vB integration details, click here)
What this essentially achieves, is that once your forum plugin has been integrated with DAP (explained below), anyone who is a member in your DAP-powered membership site, will also be automatically be logged in to your forum when they log in to your membership site.
So they won’t have to log in twice [like, once into DAP and once into your forum].
Here’s how you set up the DAP/forum integration.
Now, a quick explanation of both settings.
If you turn this to “Y” (for “Yes”), then every time someone logs into DAP, they’re automatically logged into WordPress too (with a “user” WordPress role). And because they’re logged into WordPress, that means they’re also logged into your forum (because you are using a WordPress-based Forum Plugin which already integrates with your WordPress installation)
This one matters only if you have set (1) above to “Y”.
So once you have decided to turn on the DAP/Forum plugin integration, then if you want only your “PAID” members to have access to the forum, then set this to “Y”.
If you want both FREE and PAID users accessing your forum, then set this to “N”.
When you configure a product as “Free”, you can use a “Free Signup Form” to sign up users for that Product.
If not, then the only way for people to get access to that Product, is to either buy it, or for the DAP Admin to give them access to it manually.
Now, let’s see the different ways in which you can use DAP.
So you would like the ability for a reader to buy access to a single blog post, or purchase a “Day Pass” to view all posts, or purchase a “Month Pass” or even a “Annual Pass”.
Here’s how you would do it:
1) Create a separate product for each scenario. So you end up with 4 Products:
i) “Single Post“: Has just one blog post as part of it
ii) “One-Day Pass“: Contains all blog posts, dripping for all set to start on Day #1, and also end on Day #1 itself
iii) “One-Month Pass“: Contains all blog posts, dripping for all set to start on Day #1, and end on Day #30
iv) “Annual Pass“: Contains all blog posts, dripping for all set to start on Day #1, and end on Day #365
Create 4 buy-buttons and publish them all on your sales page. Whichever product your reader purchases access to, DAP will automatically give them access to all of the content within that product, and drip it on them just the way you have set it up.
So you would like the ability for a visitor to buy your ebook/PDF/report
Here’s how you would do it:
1) Create a separate product for your ebook – call it “Super-Duper-Report” .
2) Create a single WP page/post that has some copy about the ebook, and then directly links to the ebook from the page/post itself.
3) Protect both WP page/post as well as the direct link to your ebook on your server (like http://YourSite.com/wp-content/uploads/super-duper.pdf) as part of the product from Step 1.
4) Set the “Logged-In URL” for the Product to be the WP page that talks about and links to the ebook.
5) Create buy-button for DAP Product, and publish it on your sales page.
So you would like the ability for a member to upgrade from one membership level to another (lower level to higher level – eg., Silver to Gold).
Please note that if a member is already subscribed via, say, Paypal, and their subscription is already stored as say 9.99 a month, then there’s no way to automatically upgrade them to another level that requires a payment of $19.99. There’s no way to modify the stored monthly amount in Paypal from 9.99 to 19.9 – Paypal won’t allow you to modify stored subscriptions.
So your only option is to get them to sign up newly for the higher-level, and then cancel their subscription to the lower level. Or if you’re using say a payment gateway like Authorize.net, then you can log in to your merchant back-office, and modify the subscription to start charging 19.99 going forward. That’s one of the greatest flexibilities offered by having your own merchant account.
So you would like the ability for an existing member/buyer to buy a new product from you (one-time or subscription).
This is exactly the same as when you set up the first product. No difference. Somewhere near the buy button, just let them know to use their existing member email during the purchase, if they’re a current member, that’s all.
As long as they use the same email id from their existing DAP account, then DAP will simply add the access to the new product to their existing account once they’ve purchased it.
You want to deliver content as if it were a monthly magazine. Only those who were in for that month, should be able to access that month’s content, and keep access to that content going forward.
You want to set up content to drip for a month.
So, for example…
a) For the month of April, you want only those who joined in April to get access to April’s content and onwards (if they stayed on, of course).
b) Those who joined any time in May should only get access to May content and onwards (but nothing before May).
So here’s what you do…
1) Make sure you set “Setup > Config > Advanced > Give access to previously paid for content” to “Y”.
2) Then, for each piece of content, you would set You also set up actual access start and end dates (note: “dates”, not “days”).
Then, for a post, you would set up…
Start Date: 04-01-2011
End: 04-31-2011
That way, anyone who joins in the month of April, will get access to April content now and onwards.
But anyone who joins on or after 05-01-2011, won’t get access to April content, but they’ll get access to May content now and onwards.
This assumes that your recurring is not forced-continuity. You want people to sign up for a trial first, and then manually “upgrade” to a recurring subscription. If they don’t do anything at the end of the trial, then their access to the trial product will automatically expire. But you can continue marketing to them to make them upgrade. We will set it up so that once they upgrade, they will be “moved” from the “Trial” product to the “Recurring” product (using “Product Chaining”). So they will no longer receive emails asking them to upgrade.
Q: I am wanting to collect some information from subscriber, but not until they have completed free registration. But page should be shown only once and only the first time they’re logging in.
That’s it! So subscriber signs up through your signup form, automatically gets logged in, lands on custom profile page which only shows a few fields that you want them to sign up, and once they submit the form, at the bottom of the form, you can have a link that says “Click here to enter member’s area”, and once they move away from that page, they will never see that page again because there’s no link to that page anywhere in your navigation menus.
Creating a new site (WP) where I would like the ability for a reader to buy access to a single blog post, or purchase a "Day Pass" to view all posts, or purchase a "Month Pass" or even a "Annual Pass".
Users whose access has expired – i.e., today’s date is greater than the access end date for a specific product – automatically lose access to all of the content within the product. You don’t really have to do anything to prevent them from not accessing the content.
NOTE: If you actually *want* your members to have access to previously paid for content (content that they were paying for before their account expired), then you can do that by setting the config field “Setup > Config > Advanced > Allow access to previously-paid-for content even after subscriber cancels?” to “Y”. If this is set to “N” (which is the default setting), then as soon as a member’s account expires, they automatically lose access to all content in the product.
1. First search for user in the “Users > Manage” screen.
2. At the end of the user’s row of information, you’ll see a link called “Remove”. If you click on this link, the user will completely lose access to the Product – like they never ever had access to it. You will lose all history on that specific product access (when did they first sign up for that product, when they expired, etc). So use caution when completely removing access in this manner. Of course, nothing happens to the user data itself. And their actual order information (“Orders” page) also remains intact, and you can view it on the “Orders” page by searching using a transaction number or email id. It’s only the user’s access to the specific product that is removed.
If you just want to roll-back access by a month, instead of completely removing access, then you can do this from the “Users > Manage” screen, by searching for the User first, then checking the check box next to their record, and then selecting the “Rollback Access for Selected User(s) to the Product by 1 Recurring Cycle” and picking a product name from the drop-down.
If you wish to completely remove the users from your database, then check the check-box next to the user’s row, and then in the upper right hand section, click on the “Go” button next to the text “Fully Delete Selected Users from the database”. That should do it.
Now please note that every member is automatically enrolled as an affiliate. Which means, that the moment they become a member, they are also an affiliate by default. So your members are all automatic affiliates, and if you wish to create a page for them where they can get their own unique affiliate link and affiliate stats, then you can create an “Affiliate Info” page as explained here.
However, there may be times when you wish to directly sign up affiliates – those who may not be or become actual members, or those who you do not expect to buy anything just to become an affiliate (like your JV partners or super-affiliates), or simply those whose help you want in promoting your site, but don’t wish to give them any content access.
In those cases, here’s how you can create a direct affiliate sign-up form for JV partners and super-affiliates.
1) Create a new DAP Product called “Affiliates”
2) Select the product in DAP products page and set “Allow Free Signup?” to “Yes“.
In the price&recurring tab (DAP products page), set “Is this a FREE product (that has FREE content)?” to “Yes”.
3) Use the product’s “Generate “Free Signup” Form Code“, and publish it on any page of your web site. Let’s call this the “Affiliate Signup Page”
4) Now this form has 2 fields: First name & Email. Anyone can sign up via this form by entering their first name and email id, and DAP will create an account for them, and they will have access to one product, which is “Affiliates”
It’s then up to you whether you want to publicly link to this “Affiliate Signup Page” from your home page (using text that says “Affiliates, Click here to sign-up”). Or if you don’t wish to allow anyone and everyone to be able to sign up as an affiliate – and subsequently signing up through their own affiliate link (of course, they’ll use someone else’s name during the purchase 😉 – then don’t make this page public. And email the link only to your future partners or affiliates.
1) Log in to DAP Admin Dashboard
2) Go to Users > Add
3) In the “Add New User” table, enter the affiliate’s first name, last name (optional), select the product “Affiliates” (which you must have created previously), and add them to that product.
With DAP, you can add users to your membership site in 3 different ways.
1. PURCHASE: Someone buys your product or subscribes (“Paid” member with access to both free and paid content)
2. FORM SIGNUP: Someone signs up through a signup form (“Free” members with access to only free content)
3. ADMIN ADDED: You add them as a member directly through the DAP Admin Control Panel (you can mark them as either “free” or “paid”)
All three are explained in detail below.
*You first create a “Sales Page”.
On your sales page, depending on which payment processor you use, you go to Paypal/1ShoppingCart/ClickBank and create a new product with the EXACT same name as the product you created within DAP, and get the ‘Buy Button’ link from your Payment Processor. Publish this “Buy Button” on your sales page.
* Your visitor goes to your sales page
* They purchase your product
* Your payment process (Paypal/1ShoppingCart/ClickBank) notifies DAP that you have a new purchase.
* If the product names match, DAP automatically creates an account for them, generates a random password, and sends them an email with their email/password. You can customize the contents of this email on the “Templates” screen in your DAP Admin Control Panel. Integration with your shopping cart explained elsewhere (see documentation for setup).
That’s it!
That’s how “buyers” get added to your membership site and get access to the product they just purchased.
2. FORM SIGNUP:
You wish to give someone a “Free” membership.
NOTE: “Free” members who do not have a payment associated in DAP (which means they have not purchased anything) will have access only to content that you have marked as “Free”.
Once you have created a Product in DAP, and have added content (blog post/page links, links to files, etc), and have saved it, on the Product page, below the Product name list, you will see a link called “Direct Signup HTML”. (See image below). You must first select a Product before you can copy the correct form HTML.
Fig 1. Direct Signup Link on Products page
Fig 2. Form HTML that you get on clicking the Direct Signup Link
This HTML gives you the full HTML form code that you can publish on any page of your web site. This form only collects an email address and a first name.
Take this HTML code and publish it on page of your web site where you want sign up users. This could be a WP page or post too.
Note: When you see the above HTML code, there’s a field in there that looks like this:
<input type=”hidden” name=”redirect” value=”http://YourSite/Your-login-page-link/?msg=Success!%20Your%20membership account%20has%20been%20created.%20%20Check%20your%20email%20address%20in%20a%20few%20minutes%20for%20your%20password“>
Don’t forget to change the text above, where it says “http://YourSite/Your-login-page-link/?…” to point to your actual domain name and to your actual login page (if you have customized it).
Then, when someone enters their email address and first name and signs up through the signup form, DAP creates an account for them using that email address, creates a random password, and sends them an email with their email/password.
After that, you can drip any content or emails on them that are marked as “Free” (when adding content or emails).
At some later point, if they purchase any of your “Paid” products (see the “1. Purchase” section above), then as long as they use the same email id during purchase, DAP will automatically give them access to all of the “Paid” content in the Product that they just purchased.
3. ADMIN ADDED:
If you wish to directly give someone access to a Product and all its content and emails, you can add them directly from the DAP Admin screen (Users > Add/Edit).
You just need their email id and their first name (both of which they can change subsequently) to add them to a Product.
While adding them, you have the option of marking them as a “Paid” user by checking the “Mark as Paid” checkbox.
If you don’t check this check box, then they will be added as a “Free” user and get access only to “Free” resources (content/emails).
But if you check the “Mark as Paid” checkbox, then they will get access to all “Paid” content and emails, just like someone who is actually a “Paid” member.
Go to “DAP Admin > Users > Manage” screen.
Search for the user whose details you wish to edit by email, first name, last name or user id.
(NOTE: If you simply hit “Search” on this screen without changing any of the search parameters, then all users in the system will be displayed below)
In the search results, the User Id and Name of every user is a link, and clicking on this link will take you to the “DAP Admin > Users > Add” screen, where you edit the user’s profile information.
You can change modify any of the user’s information here, including the password.
In DAP, to add a new a user to your site on the backend, you must give the user access to some product – any product.
What that means is, that you can’t create stand-alone new users who have access to no products.
So, to add a new user…
1) Go to “DAP Admin > Users > Add”.
2) Under the “Add New User“ section of the page, select a Product. Enter first name and email (both mandatory) . Last name and Username are optional.
3) If this user has paid you previously, or paid offline, then you may check the “Mark as Paid“ checkbox. If you do not check it, then the user is added as a “Free” user by default. The “Free” or “Paid” status for this product access is only a matter of internal reporting. It doesn’t really matter if a user is marked as free or paid – they will still get the exact same access to the product depending on valid access start and access end dates, whether you are dripping content, etc. So the “FREE” or “PAID” status is mainly for your own purpose, just to be able to differentiate someone you gave free access, and someone who paid you offline and you just want to note them as a paid user, that’s all.
4) Click “Add User To Product” button. At that very moment, the “Welcome Email” configured for that product, is sent to the user in real time. If no welcome email is configured, then nothing is sent.
That’s it.
PS: You can also mark a user as “Paid“ from the “Users > Manage“ screen after you’ve searched for them by email or last name.
PPS: And here’s how you can also add a manual transaction for that user