首页 > CMS教程 > &#&按 > 实现 WordPress 登录查看网站

实现 WordPress 登录查看网站

藏色散人
发布: 2021-02-12 10:14:03
转载
5305 人浏览过

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

实现 WordPress 登录查看网站

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

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

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

add_action( 'wp', 'login_access' );
function login_access() {
global $pagenow;
if( !is_user_logged_in() && $pagenow != 'wp-login.php' )
auth_redirect();
}
登录后复制

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

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中文网其他相关文章!

相关标签:
来源:zmingcx.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板