Entries Tagged 'WordPress Plugins' ↓

Conflict With “Cache” Related Plugins

If you’re having weird issues – like members logging in and seeing other people’s profile information, or logging in as a valid user and being told “Sorry, you don’t have access to this content” – then the culprit almost always is some kind of a “cache” plugin.

Do not use cache plugins on your membership site. If you wish to know why, then skip the section below and go to “Why Doesn’t It Work?”

To fix the issue, keep reading…

Solution To Caching Issues

First, let’s address how to fix your issue if you did have a cache plugin – like WP Super Cache – turned on, and are now having a bunch of login issues with logins and users and access and all sorts of things getting mixed up.

  1. De-activate the plugin
  2. Open your wp-config.php file. If there are lines in there that look like this…
    define(‘WP_CACHE’, true); //Added by WP-Cache Manager
    define( ‘WPCACHEHOME’, ‘/home/xyz/public_html/yoursite.com/wp-content/plugins/wp-super-cache/’ ); //Added by WP-Cache ManagerThen comment out both lines, by adding a “//” at the beginning of each line, like this.
    //define(‘WP_CACHE’, true); //Added by WP-Cache Manager
    //define( ‘WPCACHEHOME’, ‘/home/xyz/public_html/yoursite.com/wp-content/plugins/wp-super-cache/’ ); //Added by WP-Cache Manager
  3. Go to your wp-content/plugins/ folder. See if there’s a folder in there called “cache”. If yes, then rename it to “_cache”.

That should do the trick. Now re-test whatever the issue was before, and it would have probably been resolved now.

Why Doesn’t It Work?

Cache plugins are built on the premise that they will “cache” (save and store the contents of) WordPress pages and posts – which usually don’t change for “non-membership” type regular blogs – in a easy to retrieve, static file, so that WordPress doesn’t have to go to the database to load the contents of the page or post each and every time, which will improve the performance and loading time of your WordPress blog in general.

But the fact that such plugins are actually designed to “skip” interactions with the database as much as possible, and will make a “static copy” of your page or post and serve the same static copy to all visitors regardless of who they are, completely goes against the concept of a membership site.

The idea behind using a membership plugin like DAP, it to make sure that different visitors see different content: For ex.,

1) Casual visitors (Non-Members) who have NOT yet signed up for your products, should see content differently than …

2) Members who may have purchased one of your products, but not the product that gives them access to a specific page or post, who should see content differently than…

3) Members who actually have purchased the right product and DO have access to the content, who should see content differently than…

4) Ex-Members who signed up for your subscription-based content in the past, but have since canceled or allowed their access to expire

So, DAP tries to figure out who the visitor is first, and then packages the very same content differently to each category of visitors.

And installing a “cache” plugin kind of makes the whole point of a membership plugin meaningless. Both plugins basically contradict each other in what they’re trying to do.

One (your cache plugin) is trying to speed things up by not going to the database every time, while the other wants to make sure all of the right settings are loaded from the database to make sure your content stays secure from un-authorized access.

So, while cache plugins may work for the average, non-membership, static blog where a single post or page is not really meant to be shown differently to different people, it’s not a good idea to use it on a membership-site.

Storing and Protecting Video, Audio and Other File Formats

Q: Can DAP protect content stored on an external site, like Amazon S3?

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.

 

Q: What’s the difference between storing files on Amazon S3 (and serving it using the S3MediaVault.com plugin), compared to storing the files right on your own web site and having DAP serve them directly to your members?

A: 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 are also 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. 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.

 

Protecting Videos

There are many ways in which you can protect videos.

Case 1: The video file is stored on your web site

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.

Case 2: Video file is stored on Amazon S3

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.

WARNING: Video stored on other 3rd party video sites

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.

Customizing Login Widget

Here’s how you can customize the HTML, look & feel of the DAP Sidebar Login Widget.

There is a file in the following folder…

/wp-content/plugins/DAP-WP-LiveLinks/

by name…

DAP-WP-LoginForm-LoginLogout.html

Make a copy of that file on your desktop, rename it to…

customDAP-WP-LoginForm-LoginLogout.html

(just added the text “custom” at the front of the original file’s name).

You can then modify this new file however you want, including altering spacing, and that’s what will be displayed.

Just be careful what you change – do not modify the field names or the submit URL. Feel free to change other visual elements.

Forum Integration

DAP currently integrates with all WordPress-based Forum plugins – like BudyPress, bbPress, Simple:Press, Mingle, etc – and also with vBulletin. 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.

Which Forum To Use With DAP?

The WordPress-based forums listed above (Simple:Press, Mingle, etc) are not really full-featured (like vBulletin is). DAP doesn’t and cannot protect individual forum posts or threads if you used these WP-based forums. But they’re free, they all have pretty decent forum features, easy to set up and use, and will work just fine for most people.

But 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 vBulletin (vB). vB is not free, has a bigger learning curve than the simple WP forum plugins, and requires more setup and maintenance overall. And like us (we use vB for our forum too), 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 vB is the way to go, and DAP integrates extremely well with vB.

Now, the rest of this post is about integration of DAP with the WordPress-based forums. (For vB integration details, click here)

Integration with BuddyPress, bbPress, Simple:Press, Mingle, etc

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.

  1. Download the 3rd party WordPress forum plugin
  2. Install it as per their instructions. We don’t support the installation or setup of the forum plugin itself.
  3. Log in to your DAP Admin Dashboard and click on “Setup > Config”.
  4. You have two settings on the page that applies to forum integration:
    Sync DAP User data and WP User data
    Sync WP data only for PAID users
  5. Pick “Y” or “N” for each of them, and you’re all set.

Now, a quick explanation of both settings.

1) Sync DAP User data and WP User data

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)

2) Sync WP data only for PAID users

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”.

Upgrading to the latest version of LiveLinks

  1. DO NOT DELETE your DAP-WP-LiveLinks folder.
  2. DO NOT DISABLE or DE-ACTIVATE the DAP-WP-LiveLinks plugin.
  3. If you wish to make a back up of your existing DAP-WP-LiveLinks folder, DO NOT DO IT in the same folder, as WP will treat it as a duplicate copy of the plugin, and you can have unexpected results. If you wish to take a backup, then download it to your computer, or move it away from the wp-content/plugins/ folder. DO NOT KEEP more than one copy of the LiveLinks plugin files in the wp-content/plugins/ folder
  4. Download the latest version of DAP-WP-LiveLinks.zip from the members area.
  5. Unzip the zip file to your desktop.This will create a folder by name DAP-WP-LiveLinks on your desktop.
  6. Simply Upload the entire DAP-WP-LiveLinks folder (including the folder too) to your WordPress plugins directory (which is wp-content/plugins/). You are essentially over-writing your existing plugin files, that's all.

That's it!

Note: The above ALL-CAPS, that too in RED does not mean we're yelling at you :-) . We just want to OVER-EMPHASIZE the importance of the text, that's all.

Creating A Login Page Within WordPress

Now DAP already provides you with a built-in, out-of-the-box login form, at YourSite.com/dap/login.php . But if you want to put this form “within” your WordPress blog, so as to give your login form the same Look & Feel as the rest of your blog, then do this…

1) Create a WordPress Page (not “Post”) with the text %%LOGIN_FORM%% in the body of the page, and a title of say, Login, and save the new page. If you used the text “Login” for the title, then the actual link to this page would be YourSite.com/blog/login

2) This page now shows up as “Login” along with the rest of your “pages” on your blog.

3) Go to DAP Admin > Setup > Config . Scroll down to the field Login URL

In the text box, enter the full link to your login page from Step 1:
http://YourSite.com/blog/login

Or if your blog is in the root, then…

http://YourSite.com/login

That’s it! When someone clicks on the “Login” link that now shows in your “Pages” menu, they will now see a nicely formatted login form.

Related: Where is the Logout Link?

Using Sneak-Peek For Blog Posts

By default, none of the posts or pages you have protected in DAP will be visible in any of the WP menus (not even in custom menus).

Which means, as far as your visitors (or search engines) are concerned, those posts/pages don’t even exist in your blog – until the content “drips” on them.

Some DAP users want it that way, and some don’t.

Also, from an SEO perspective, if your visitor (who is not a member, and one who is not logged in) can’t even see the post, then neither can Google. This means, if you do a blog-and-ping, when Google arrives at the permalink of your new post, because the post is protected, DAP will redirect Google to your login page. This means, you don’ get the benefit of SEO for your new post.

Also, from a “Curiosity” standpoint, if you protect all of the posts, then your visitor will only see a handful of non-protected blog posts, and logged-in members will see only content that has already dripped on them (accessible to them).

Giving them a “sneak-peek” of the protected content is a great way to get them excited about your content.

So for example, you could have a blog post that talks about a video, and goes into detail about everything that they can learn from watching the video – but the content ends just before the video, and where the video would’ve normally appeared, there appears a “Login Form” that asks them to login first before they can view the content, or purchase access if they wanted to see the video.

How to turn on Sneak-Peek

Go to DAP Dashboard > Config > WordPress Sneak-Peek

It is set to “N” (no) by default. Change this to “Y” and click on the “Update” button to save the change.

And then when they click on the “more” button to read the rest of the post, the full post is protected anyway, and they are presented with a login screen.

WARNING: READ THIS BEFORE YOU TURN ON SNEAK-PEEK

As soon as you turn on Sneak-Peek, DAP will show all content from your blog posts, but only up to the “More” tag. This means, if you don’t have a “More” tag in any of your content, then all of your blog posts will show to all users, regardless of whether they have access or not.

So, the most important thing here is this:

SNEAK-PEEK and MORE are INSEPARABLE.

If you do sneak-peek, you MUST include a “More” tag.

So when you create a WordPress blog post, split the post into two parts using the “More” tag. This creates a “public preview” portion of the actual post, that shows up on your blog’s home page and in the permalink when that post is displayed. To read the rest of the post, your visitor has to click on the “More” link, and that’s when depending on whether the user has access, the rest of the post will be displayed.

DAP WP LiveLinks Plugin

Once you install this plugin, when someone visits your blog, they will ONLY see posts that they are “eligible” to view. This applies to your blogs main page as well.

So, if a casual visitor arrives at your blog, they only see titles and their summaries for posts that have NOT been protected (not added to DAP at all).

For instance, if you have 100 posts, and have protected 95 of them, then on your blogs home page, this visitor will see only 5 blog posts – titles and summaries – in TOTAL.

They wont even see the titles or bodies of the protected posts. And if they somehow get the link to it (from someone else, by email, say) and try to visit it, then the existing DAP protection kicks in, and theyre asked to login first to determine if they have access to that post “as of now.

But once this same visitor logs in, all blog posts that were HIDDEN earlier MAGICALLY re-appear ;-) And they see all posts that they are CURRENTLY eligible to access (this excludes posts to which access already expired, and posts to which they dont have access YET – i.e., future availability).

If you want a certain portion of even your protected posts to always show up, even if the user is not eligible to see the post, see DAP “Sneak-Peek”.

This plugin lets you do two other things:

1) You can PERSONALIZE blog post titles and content with MERGE variables.

So, if you create a blog post with the title “Welcome %%FIRST_NAME%%“, then when your member logs in, they will see “Welcome John“.

Available merge variables;

%%FIRST_NAME%% -  Gets replaced with their first name

%%EMAIL%%  – Gets replaced with their email

%%MEMBER_HOME_PAGE%% -  Gets replaced with the ‘login’ page

2) You can also put the Login Form on any WP “Page”.

Personalization For Your Blog Posts

1) Personalize post Titles and Content with MERGE variables:

%%FIRST_NAME%% -  Gets replaced with their first name
%%EMAIL%%  – Gets replaced with their email
%%MEMBER_HOME_PAGE%%
-  Gets replaced with the ‘login’ page

So if you create a blog post with the title “Welcome %%FIRST_NAME%%“, then when your member views that post after they’ve logged in, they will see “Welcome John“.

2) Personalize the Login Form:

You can put the Login Form on any WP “Page”.

3) Personalize Member and Affiliate Information:

Put Member & Affiliate Info on any WP Page