DAP has 3 fields which are applicable at a Product-level.
If a content (page/post) is part of just one single product, then the Product-level settings will apply.
But if a content (page/post) is part of multiple products, then DAP can’t figure out which product’s settings to use – so it falls back to the “GLOBAL” equivalent of that same setting under Setup > Config.
The 3 fields are…
All 3 of these have both a Product-level setting, plus a fall-back Global setting under Setup > Config.
If the user has access to more than 1 DAP Product, then DAP cannot decide which Product’s Post-Login URL to redirect the user to. So it simply redirects the user to the global equivalent of that URL at Setup > Config > Post-Login URL (Global)
So if you’re testing the “Post-Login URL” field, make sure you create a test user with access to just that one product, and then log in as her and test.
If the content that user is trying to access, but is not eligible to access, is part of just one DAP product, then that product’s “Error Page URL” will apply. And this field is set to “/dap/product-error.php” by default. Even if you set this to blank, it will assume that to be the same as teh default value, and the default “In-page Error Message” will apply.
If the content that user is trying to access, but is not eligible to access, is part of more than 1 DAP Product, then DAP cannot decide which Product’s “Error Page URL” to use. So it simply uses the global equivalent under Setup > Config > Error Page URL (Global)
If you want to redirect the error page URL to a custom error page, then you have to enter that into each product, as well as one for the global one.
If the content that user is trying to access, but is not eligible to access, is part of more than 1 DAP Product, then DAP cannot decide which Product’s “Sales Page URL” to show on the “In-Page Error Message” shown to the viewer. So it simply uses the global equivalent under Setup > Config > Sales Page URL (Global)
So make sure you have set up a URL in that field.
When you click on a category (instead of a single post), then because the category could contain many posts, each of which could be part of multiple Products. So DAP is unable to choose just 1 single Product from which to pick the “Error Page URL” and redirect the visitor to. So it just shows the error message with the padlock image, which can be customized. Click here for details.
3. The Lock, being generic, says “Sorry, this content is for members only.” but does not specify, as I (will) have several different types of members. It should say something like “Sorry, this content is for %%PRODUCT%% subscribers only.” Can this actually work? I am just guessing. | |||
|
A: See this post How and Why to use Amazon S3 to Deliver Audio, Video and PDF on your WordPress website
If all files are stored right on your web site, and you have a large amount of video, audio and other files, then a lot of people viewing and downloading them from your site will use up a lot of resources on your server – like site loading time, server memory, server bandwidth, etc – and your site could slow down considerably. Plus, on top of that, there may be bandwidth charges that your host will charge you with for all of those downloads, which are usually not very cheap.
And don’t put too much faith in your web host’s “Unlimited Bandwidth” clause, because if you read the fine-print carefully, you’ll see that as per their TOS, if you consume large amounts of bandwidth and use too much of the server resources, this could cause other web sites (belonging to others) on the same server to slow down and have a degrade in performance, especially if you are on a shared hosting account. And they could consider this abuse of their TOS, and could either slap you with huge bandwidth or server utilization fees, or may even ask you to take your web site elsewhere because you’re causing issues for other site owners on the same server.
Instead, if the files are stored on Amazon S3, then you don’t have to worry about your site slowing down, or you using up too much bandwidth and getting slapped with huge bandwidth fees, because the files are being served from Amazon’s huge S3 servers which have tons more resources and speed compared to your web host.
Plus in the long run, bandwidth is cheaper on S3 compared to your web host.
A: Not directly, not by itself. By default, DAP can only protect files (and any other content) that is on the same web site where DAP is also installed. For large files, we do recommend that you store files on a fast, scalable file server like Amazon S3. Now, the page or post itself (in which you post that Amazon S3 link) can be protected by DAP, and no un-authorized user can even see the content of the page (or the link within that page).
However, once a user has authorized access to a page because they’re a member, now they can see the page where you have that Amazon S3 link.
It’s similar to posting a public YouTube video on a protected DAP page on your web site. Sure, DAP can protect the page from un-authorized users, but authorized users can actually see the page, and see that it’s a YouTube video, and clicking on that video will directly take them to a page on YouTube.com, which DAP has no control over, and cannot protect once they leave your web site.
Similarly, DAP cannot directly protect that external link to your file stored on Amazon S3. And that’s where our Amazon S3 plugin S3MediaVault.com (S3MV) comes into the picture.
S3MV can make sure that your files on Amazon S3 cannot be accessed directly by anyone, even if the link were shared with others via email or on a forum, and can ONLY be accessed through a page or post on your web site (web site where you have installed the S3MV WordPress plugin).
NOTE: The S3MV plugin is included for free with your purchase of any DAP license, starting with the Unlimited-site license and above.
A: Yes. S3MediaVault offers “true streaming”, as well as standard “Progressive Downloads”. You can choose either option for your videos and audio.
If you want them to be able to download the files, S3MediaVault allows you to do that.
And if you do NOT want them to be able to download the files, S3MediaVault help you prevent downloads as well.
S3MediaVault is the first-ever WordPress plugin that lets you create encrypted Streaming Video and Streaming Audio.
“Impossible to Download” Streaming Videos: We highly recommend allowing paying members to download your content for offline use. And S3MediaVault very much allows you to create secure download links for all of your content – Video, Audio, PDF, etc.
However, for some reason, if you do *not* want anyone to download your videos/audio, then S3MediaVault can do that too.
S3MediaVault allows you to create HLS Videos with industrial-strength AES 128-Bit Encryption for both your videos and audio. This is “True Streaming” at its best, with the strongest security available for streaming videos and audio.
None of your website visitors, subscribers, or members will be able to download your videos from your website. Even software like Internet Download Manager (IDM) or browser extensions like Video Downloader or Video DownloadHelper will not be able to download your streaming video or audio. S3MediaVault is the only WordPress plugin that can create this level of security. Check out our encrypted streaming demo here.
Multi-Resolution Streaming with “Resolution Switcher” and “Video Stream Optimization”: S3MediaVault allows you to create streaming video in multiple resolutions. You can choose the resolutions in the Settings page – 1080p, 720p, 360p, 240p and 144p. And S3MediaVault automatically encodes your video in all of those resolutions with a single click. And when the viewer clicks play on the video, the S3MediaVault video player will automatically choose the lowest-but-best resolution for the viewer based on their internet speed. So, if they’re watching from a device which has slow internet speeds (like 3G, or 4G or maybe they’re using a service that doesn’t offer high-speed internet, or maybe throttles mobile access), the player will serve them the most optimized quality of video. That means, your streaming videos will load quickly for them regardless of their internet speed, saving them on their bandwidth bill, as well as saving you on your AWS bandwidth bill (win/win FTW!).
In addition, just like you can do on YouTube, your viewers will be able to change the resolution to a higher or lower number, and the switch will happen seamlessly without affecting their viewership experience.
S3MediaVault is the most secure plugin that can secure your content and make sure it’s only available on your website.
Combine that with the Page/Post protection of DigitalAccessPass (DAP), which can make sure only certain people (like paid members, or free but registered users) can access the post or page where the S3MediaVault embed code is published.
Combine DAP + S3MediaVault, and you would have now completely locked down your content from any and every kind of unauthorized and illegal access.
Any time someone gets access to PRODUCT A (either through direct signup, manual admin add, or purchase), then you can automatically give them access to PRODUCT B. And you can select whether they get PAID access to PRODUCT B or not.
Similarly, when someone is removed from PRODUCT A, you can also tell DAP to automatically remove their access to PRODUCT B.
Very useful for bundling products.
User signs up as free user to PRODUCT A.
Later on, user buys PRODUCT B (which is, say, paid version of PRODUCT A).
If you set up Product Chaining, then you can automatically remove them from PRODUCT A when they purchase PRODUCT B. So when you send an email to all PRODUCT A users asking them to purchase access to PRODUCT B, then you won’t be sending emails to those who have already purchased PRODUCT B.
Click on image below to open full size in a new window.
You already know that you can create a “My Content” kind of page within WordPress, that will list all products that a user has access to, and then each product will list the content that they currently have access to (content that has already dripped on them).
But this page is a full-summary of all products, all listed on one page.
Instead, if you wished to create product-specific download pages, where you create a separate page for each product, that lists all the content within just that product alone, then that’s where DAP’s “ProductLinks” Widget comes in handy.
Here’s how you set it up.
Replace the entire text <id> with the actual Product id from DAP (Products > Manage)
So, if the product’s id is 6 in DAP, then the merge code becomes:
%%PRODUCT_DETAILS_6%%
Save the page. And if you gave the page the title “Gold Membership Content”, then the permalink for this page will be:
http://YourSite.com/gold-membership-content/
There are many ways in which you can protect videos.
By default, DAP can only protect files that are stored on the same web site where DAP is installed.
So if you install DAP on YourSite.com , then your files must also be located on YourSite.com. DAP installed on YourSite.com cannot protect files (.mp4, .mp3, .html, .pdf, .doc) that are stored on AnotherSite.com.
So assuming the files are stored on the same site as DAP, you can (and should) protect both the actual video file, as well as the blog post or page in which the embed-code for your video is published, by adding both to a Product.
This gives you 2 levels of protection for your videos:
Level 1: The blog post or page containing the video player code, itself is accessible only by authorized members.
Level 2: When an authorized user gets legitimate access to the page where the video is published (because they’re a paying member, say), even if they try to do a view source and figure out the location of the video (eg., http://yoursite.com/videos/howtovideo1.mp4) , and pass it around by email to their friends (or post the link in an online forum), their friends still can’t view the video, because the video link itself is protected by DAP.
If you have some text that you want the casual visitor (and Google) to read, but wish to protect only the video, then you could turn Sneak-Peek on (in Setup > Config > Advanced), insert a WordPress more tag (<!–more–>) into your post just where you want the content to start being protected, and put the video player’s embed code after the more tag.
The only 3rd-party-stored video files that DAP can protect at this time are videos (and other files) that are stored on Amazon S3. DAP cannot do this by itself, but uses a special WordPress plugin called S3MediaVault.com , which is a plugin we developed specifically to make Amazon S3 videos play in your WordPress blog posts/pages. So again you get 2 levels of protection for your videos…
Level 1: DAP protects the post/page where the special S3MV video player code is embedded
Level 2: The S3MediaVault plugin makes sure that even if someone tried to do a view source and figure out the actual link to your Amazon S3 video, they still won’t be able to view the video.
DAP cannot protect, say, videos that are embedded from other 3rd party web sites like YouTube or Hulu. Of course, DAP can always protect the blog post or page itself that contains the video, but once an authorized user gets valid access to that blog page, they can see that it is a YouTube video (say), and then pass that YouTube video link to their friends, in which case DAP cannot protect that external YouTube video link.
Check out my podcast episode at http://subscribeme.fm/video-hosting-for-your-membership-site/ which goes into detail about video hosting for your membership site.
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
By far, this is the most frequently asked support question. So let’s start by addressing that real quick…
If a User can’t access a piece of content (blog Post, Page, File, etc), then there are only a very few reasons for that…
In all cases, the main place to start troubleshooting is with the Users > Manage page. Search for the user’s email id (who is reporting or experiencing the content-access issue). See what Products they have access to, check their Access Start & End dates, check their account status, etc.
So let’s go over some of the basics, and some more detailed solutions for such issues.
Use two different browsers for testing. Not two different browser tabs, but 2 completely different browsers – like Chrome and FireFox, or FireFox and Internet Explorer. Log in as DAP admin using one browser, and then as a regular user in another browser. That way, you keep the access separate, and your testing will be clean and easy.
If you are using, say, Firefox, you are logged in to DAP admin, and are browsing your blog or trying to access content on your blog, then you will only have access to the content that the admin user has access to. You, as the DAP Admin, DO NOT have automatic access to every product by default. You will have to manually give yourself access to every product you create. And if you want yourself to have “PAID” access, then you have to mark yourself as “PAID”.
That is because, if DAP gave you automatic access to all products, then you will go ahead and protect a blog post, try to access that blog post, and DAP will give you access to that content because you as admin have automatic access to the product. And then you will wonder “Hey, I protected a blog post, but I’m still seeing it.
We realize that your first gut reaction is to blame DAP :-). That’s what we would’ve done too, if we hadn’t developed DAP.
But please note that whatever issue it is, you can be 99% sure that it’s not a bug. Because access-related bugs are extremely rare. We also do a lot of pre-release testing, then we release a beta version, then we get hundreds, if not thousands of people to try the beta, iron out the issues, and then release the final version to everyone else. So if there were a bug, it would’ve been caught a long time before it gets to you.
So we request you to approach things with an open mind, and try to think through calmly (and logically 🙂 why a certain user does not have access to a certain piece of content.
Now, on to more specific issues and specific answers…
Short Answer: If you have protected a post/page/file, try to access it, and are able to do it, then it means you DO have access to it. Now let’s troubleshoot so that you understand the “how” and the “why”.
Short Answer: If you have protected a post/page/file, try to access it, and are able to do it, then it means you DO NOT have access to it. Now let’s troubleshoot so that you understand the “how” and the “why”.
You’ve created a free product with pages or posts that are only accessible to this membership type. The problem is that the users can’t actually access this content.
1. Log into your DAP system and go to the Products/Levels > Manage page.
2. Select your product in the General Settings tab, then click the ContentResponder tab.
3. In the Content Responder tab, you’ll see “edit” hyperlinks beside each of the pages/posts you’ve protected. Click the one for the page that’s causing the problems.
4. The “Drip Settings” popup will open now. In that popup, set “Is Free? (i.e., Accessible toFree users too?” to “YES”.
5. Click Save/Update resource.
Make sure you have “Sneak-Peek” turned off in the DAP Admin Config section. Once you do that, posts that are protected will not be displayed on the home page as well as if someone tried to visit the link directly.
It’s possible that you have no published posts (it’s a new blog), or you have probably protected all of the posts by adding them all to a DAP Product.
This is probably because you have turned on “Sneak-Peek”, but have not inserted the “More” tag into the post/page in question.
So for the above issue, do one of the following…
1) Turn Sneak-Peek to off (set it to “N”)
– OR-
2) Insert the WordPress “More” tag into the post/page.
Doing either one should resolve this issue.
The only time a member’s access end date goes into the past, if their recurring payments are no longer coming in.
Which means, either they have canceled (or gotten a refund), or your membership level’s lifecycle has ended (like, if your Product/Level was a micro-continuity subscription program that lasts only for 6 months).
If the payments are still coming in, their end dates should keep getting extended by DAP automatically.
If payments are coming in, but the dates are not getting extended, then the payment link between DAP and your Payment Processor somehow broke, and you need to visit the Payment Processor integration documentation for your specific payment processor, and troubleshoot why the payments are coming in fine, but DAP is not processing them.
To ensure members’ access does not stop, make sure that their payments do not stop, and the recurring cycles in the product match that of your payment processor. Say, if your payment processor is processing recurring payments every 30 days, then DAP’s recurring cycles (on the Product page) should also be 30. If it’s 31, then DAP’s should also be 31.
Tip: It’s not a bad idea to set DAP’s recurring cycle day to 1 more than your payment processor’s recurring cycle, just in case your payment processor takes an extra day to process the actual payments. So in that case, if you have set your Payment processor to charge every 30 days, you could set DAP’s recurring cycle to 31 (one extra day grace period, just in case the recurring payment does not get processed on time).
If this is a new site that has just setup DAP, it is possible that the DAP changes that need to go into your .htaccess file at the main folder of your blog in question, didn’t go in correctly.
Some questions to ask that will hopefully lead you to the answer…
NOTES
1) DAP Admin does not have access to content by default. You need to give access to the DAP admin to the products in the DAP Manage Users Page.
2) If a user reports they cannot access content, it could be because their access has expired. So…
a) Login as DAP Admin, go to DAP Users > Manage page, search for user by email id (or other).
b) Make sure they have “valid” access to the product
c) Look at their access start and end dates. If access end date is earlier than the current date then you can manually extend access for legitimate users by clicking on the ‘Modify link’ under ‘Product Access’ in DAP manage users page.
d) Make sure that if it’s a PAID USER, then the user record is marked as ‘Paid or has a transaction Id’ under the ‘Trans Id’ column in DAP manage users page.
Users marked as “FREE” can only access content that is marked as “Free” in the DAP products page -> Content Protection area.
When an unauthorized visitor tries to access a protected page or post, you can choose from among two things that can happen:
1) Display an “In-Page Error Message“: They can be presented with an error message that shows a “lock” image. You can show the standard DAP version, or you can customize this message and add your own text.
-OR-
2) Redirect to Error Page: They can be redirected to any other page of your choice (WordPress page or post, or a completely non-WP page)
“In-Page” basically means that this message will be shown on the same page that the user is trying to access (to which they do not have access). So basically, the content of the very post or page they’re trying to access, will be replaced by this “In-Page” error message.
The default error messages shown by DAP are as follows.
A) If a visitor is NOT logged in, then they will see…
(Image A)
B) If a visitor IS logged in, then they will see…
(Image B)
If you see Image A above, there is a line of text that says: “Click here to get access”.
And in Image B above, there is a line of text that says: “If you are a free member, then click here to purchase access”.
In both cases, the text “click here” is actually a link. And by default, that link will point to whatever you put in the “Sales Page URL” in your DAP Product (to which the above post/page is part of). See Image C below.
(Image C)
If you wish to customize the above standard error messages, then here’s what you need to do:
Instead of showing an error page (default or custom, from (1) above) you can also redirect the un-authorized user to a completely new page/post of your choice.
If you see Image D below, you will see that on the DAP Products page, there is a field called “Error Page URL“.
By default, this is pointing to /dap/product-error.php
(Image D)
Change this to any link you want. Examples…
http://YourSite.com/myerrorpage.html , or
http://YourSite.com/myerrorpage/
Whatever you put in the above field (Error Page URL) is what page the user will be redirected to, when they access a page that they don’t have access to (either because they have not logged in, or because they are logged in, but don’t have access to it yet).
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 your visitor encounters a “Sorry, you’re unable to access this content” page that has the DAP Padlock image on it, you can customize the text that shows up below the padlock by doing this:
1) Open the file error.php
that is stored in the /dap/inc/
folder.
2) RENAME it as (or COPY it as) customerror.php
.
3) You can put ANY kind of HTML content within this. Images, javascript, css,, buttons, text, whatever. Any HTML can be used in this file.
4) Upload this new file customerror.php
back to same folder /dap/inc/
5) error.php
doesn’t matter any more. Whether you delete it, or just leave it alone, the fact that there is a customerror.php
file in the same directory means that DAP won’t even bother about error.php
any more.
6) Future updates of DAP will not touch your customerror.php file. So updates or upgrades will not mess with your custom error page copy.