Force Users To Login Before Reading Posts in WordPress

Interactive Online > Blog  > CMS  > WordPress  > Force Users To Login Before Reading Posts in WordPress

Force Users To Login Before Reading Posts in WordPress

If your blog has some restricted area that you don’t want to publicize to all visitors, just for members only, then you might want to force users to login before reading these posts. Fortunately, WordPress has a built-in function which can help us to do that.

Force Users To Login Before Reading Posts in WordPress is a post from: WPBeginner which is not allowed to be copied on other sites.

Related posts:

  1. Best of Best WordPress Custom Login Page Designs
  2. How to Allow Users to Submit News / Posts to Your WordPress Site
  3. Akismet 101 Guide for All WordPress Users


If your blog has some restricted area that you don’t want to publicize to all visitors, just for members only, then you might want to force users to login before reading these posts. Fortunately, WordPress has a built-in function which can help us to do that.

WordPress: Force Users To Login Before Reading Posts

The function is auth_redirect(), this is how it works: When it is called from a page, it checks to see if the user viewing the page is logged in. If the user is not logged in, they are redirected to the login page. The user is redirected in such a way that, upon logging in, they will be sent directly to the page they were originally trying to access.

By using this function, we can implement our code that check if post is restricted or not, and redirect users to login page if needed.

Just paste the following code into your theme’s functions.php file:

function my_force_login() {
global $post;

if (!is_single()) return;

$ids = array(188, 185, 171); // array of post IDs that force login to read

if (in_array((int)$post->ID, $ids) && !is_user_logged_in()) {
auth_redirect();
}
}

Change the array of post IDs to fit your requirement. After that, open the header.php file and put the following code in the very top:

<?php my_force_login(); ?>

The code is simple, but you can expand it with more options like: require login in some specific categories, make an option page for easy input post IDs, etc.

The function auth_redirect() is available since WordPress 1.5.

Tuan AnhTuan Anh (aka. Rilwis) is a 25 years old blogger and web developer from Vietnam. He is interested in PHP, MySQL as well as Web 2.0 technologies (CSS, Javascript, Ajax). He loves WordPress and all related to it. Follow Rilwis on Twitter to stay update with him. Rilwis’s website: Deluxe Blog Tips

Force Users To Login Before Reading Posts in WordPress is a post from: WPBeginner which is not allowed to be copied on other sites.

Related posts:

  1. Best of Best WordPress Custom Login Page Designs
  2. How to Allow Users to Submit News / Posts to Your WordPress Site
  3. Akismet 101 Guide for All WordPress Users

(read full article on source site)
Free Website for Your Dental Practice
See why our dental practice websites exceed the features & value of your typcial dentist website.
  • No cookie-cutter websites
  • No duplicate content
  • Custom built with a unique look and feel
  • Unique content written by professional writers
  • Set yourself apart from other dentists
  • The key to your online success!
* we never share your e-mail with third parties.