我想关闭一个我公开的wordpress博客,并且仅为自己保留。
我知道我可以将它设置为私有,但它显示了一个uggly登录页面,我不希望有人试图访问它(使用随机用户名/传递等)或者认为它仍然打开但是对于有帐户或这样的事情。
我希望博客指向一个"找不到服务器"对于公众而言,当我以管理员身份登录时,可以查看我的帖子和后端以及前端。
我怎样才能做到这一点?
答案 0 :(得分:1)
我的建议如下:
function is_login_page() {
return in_array( $GLOBALS['pagenow'], array( 'wp-login.php', 'wp-register.php' ) );
}
function wpse_make_blog_private() {
if ( ! is_user_logged_in() && ! is_admin() && ! is_login_page() ) {
global $wp_query;
$wp_query->set_404();
}
}
add_action( 'wp', 'wpse_make_blog_private' );
它会在所有页面上显示404但仍允许您登录。登录用户将看到网站正常。
在显示完全损坏的网站的请求中,将以下代码添加到functions.php中。请注意,这不是上面的代码。
function is_login_page() {
return in_array( $GLOBALS['pagenow'], array( 'wp-login.php', 'wp-register.php' ) );
}
function wpse_make_blog_private() {
if ( ! is_user_logged_in() && ! is_admin() && ! is_login_page() ) {
die();
}
}
add_action( 'wp', 'wpse_make_blog_private' );
您可以选择使用wp_die来添加具有最小样式的错误消息。请参阅:https://codex.wordpress.org/Function_Reference/wp_die
答案 1 :(得分:0)
我建议您在以下检查中包含您希望对登录用户可见的所有代码:
if ( is_user_logged_in() ) {
// do stuff for logged in users
} else {
// do stuff for guests / users that are not logged in
}