实现 WordPress 登录查看网站

来源:undefined 2024-12-24 13:49:10 1011

下面由wordpress教程栏目给大家介绍wordpress 登录查看网站的方法,希望对需要的朋友有所帮助!

如网站内容只希望注册用户浏览,对其他所有人隐藏,浏览者未登录访问直接跳转到登录注册页面,可以用下面的代码实现。

将下面代码添加到当前主题函数模板functions.php中:

代码一 未登录访问网站直接跳转到默认登录页面。

1

2

3

4

5

6

add_action( wp, login_access );

function login_access() {

global $pagenow;

if( !is_user_logged_in() && $pagenow != wp-login.php )

auth_redirect();

}

登录后复制

代码二 未登录访问网站,可以302跳转到自定义的页面

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

add_action( template_redirect, zm_force_login );

function zm_force_login() {

// 判断登录

if ( ! is_user_logged_in() ) {

// 判断HTTPS

$schema = isset( $_SERVER[HTTPS] ) && on === $_SERVER[HTTPS] ? https:// : http://;

// 判断站内链接

$url = $schema . $_SERVER[HTTP_HOST] . $_SERVER[REQUEST_URI];

// 添加白名单

$allowed = apply_filters_deprecated( zm_force_login_whitelist, array( array( 允许访问的链接1, 允许访问链接2 ) ), 1.0, zm_force_login_bypass );

$bypass = apply_filters( zm_force_login_bypass, in_array( $url, $allowed ), $url );

if ( preg_replace( /?.*/, , $url ) !== preg_replace( /?.*/, , wp_login_url() ) && ! $bypass ) {

// 防止缓存

nocache_headers();

// 跳转的页面链接

$page = 跳转到的页面链接;

// 执行302跳转

wp_safe_redirect( $page, 302 );

// 跳转到默认登录页面

// wp_safe_redirect( wp_login_url(), 302 );

exit;

}

}

}

登录后复制

注:跳转的页面链接要同时加到白名单中,否则会形成死循环

以上就是实现 WordPress 登录查看网站的详细内容,更多请关注php中文网其它相关文章!

最新文章