plugin-icon

Redirect to login if not logged in

Redirects users to the login page if the visitor is not logged in.
評價
4.8/5
版本
1.7.0
活躍安裝總數
200
最近更新:
Sep 13, 2018

Redirects users to the login page if the user is not logged in. After login the user gets redirected to the original entry page. For advanced users a filter is provided to override the redirect.

The principle behind this plugin is to redirect all users – from every post, page, archive, etc. – to the login page (usually wp-login.php). Except for the override filter it does nothing else.

Overriding the redirect

  • Note: This plugin may not be for you, a membership plugin might be a better fit. Chris Lema writes excellent reviews of +30 membership plugins here: http://chrislema.com/category/memberships-plugins/

If you do have a need for this plugin and you want to exclude specific views under specific conditions, a filter is provided to override the redirect.

To override the redirect the filter must return a boolean value of true. WordPress core provides many conditional tags that either return true or false or you can write your own conditionals.

Take a look at the Conditional Tags page on The WordPress Codex for some inspiration. https://codex.wordpress.org/Conditional_Tags

Usage: Copy/paste/edit an example to the functions.php of your theme or create a new file in wp-content/mu-plugins/ if you do not wish to edit your theme.

Note: Be carefull not to use multiple filters at the same time as that may cause unexpected results. Instead use multiple conditions in one filter.

  • Override if the front page is either posts or a page:

    add_filter( ‘rtl_override_redirect’, ‘is_front_page’ );

  • Override if the post is ‘hello-world’:

    add_filter( ‘rtl_override_redirect’, function() { return is_single( ‘hello-world’ ); });

  • Override if the page is ‘sample-page’:

    add_filter( ‘rtl_override_redirect’, function() { return is_page( ‘sample-page’ ); });

  • Override if the page ID is 42, the slug is ‘sample-page’ or the title is ‘About Me’:

    add_filter( ‘rtl_override_redirect’, function() { return is_page( array( 42, ‘sample-page’, ‘About Me’ ) ); });

  • Override if the page ID is 42 or a post is ‘hello-world’:

    add_filter( ‘rtl_override_redirect’, function() { if ( is_page( 42 ) || is_single( ‘hello-world’ ) ) { return true; } });

免費使用Business方案
目前已測試版本
WordPress 5.0.24
此外掛程式已可供下載,並可用於你 系統。