【问题标题】:How to make wordpress blog completely invisible to public [Not Private]如何使 wordpress 博客对公众完全不可见 [非私人]
【发布时间】:2014-04-26 12:30:13
【问题描述】:

我想关闭一个我从公众那里获得的 wordpress 博客,并只为我自己保留它。

我知道我可以将其设置为私有,但它显示了一个丑陋的登录页面,我不希望人们尝试访问它(使用随机用户名/密码等)或认为它仍然开放但它适用于有帐户的成员或类似的东西。

我希望博客指向公众的“未找到服务器”,并且当我以管理员身份登录时能够查看我的帖子和后端以及前端。

我怎样才能做到这一点?

【问题讨论】:

    标签: wordpress locking invisible


    【解决方案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

    【讨论】:

    • 谢谢你的回答 NAthan,我应该把这个放在 header.php index.php 的什么地方?我想解决这个问题的方法是让它成为私人博客并使用上面的代码?当某人未登录时,它会给他一个 404 页面,例如网站不存在时还是使用网站模板并显示 404 的“内部 404”?
    • 放到functions.php中。是的,这正是它的作用。
    • 发生了一件奇怪的事情,在我使用上面的代码之前,我试图在 wordpress 的阅读选项中找到“我希望我的博客只对我选择的用户可见”,但它不存在。知道我能做什么吗? (我使用的是最新版本的 wordpress 3.8.1)
    • 第一次听说有这样的选择。
    • 我找不到将其设为私有的方法,通常我可以进入“阅读”=> 将此博客设为私有(在阻止搜索引擎选项下类似这样)
    【解决方案2】:

    我建议您将所有希望登录用户可见的代码都包含在以下检查中:

    if ( is_user_logged_in() ) { 
        // do stuff for logged in users
    } else {
        // do stuff for guests / users that are not logged in
    }
    

    【讨论】:

    • 我应该把它放在 header.php 还是 index.php 中?如果我没有登录,我希望整个网站都“找不到服务器”。
    • 这应该环绕您的内容,无论您想显示/隐藏什么。
    猜你喜欢
    • 1970-01-01
    • 2019-05-28
    • 1970-01-01
    • 1970-01-01
    • 2021-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多