为未注册用户锁定其中一个WP网络站点

时间:2012-11-09 作者:trejder

我有一个博客网络(Multisite),安装了域映射插件,我的一些网站正在开发中,所以我想对未注册的用户锁定它们。

我测试了几个为此目的而设计的插件(仅专用插件、专用WP套件、专用WP套件、仅限成员插件、仅限注册用户插件、绝对隐私插件和专用插件),但都失败了。

我访问了该网站,看到了登录表单,填写了它,标记了“记住我”,然后登录,我被重定向到仪表板(用户部分),而不是网站本身。当我重新输入站点URL(域)时,我再次看到了登录页面,尽管我标记了“记住我”。我无法访问网站本身。

我甚至为此编写了自己的插件,尽可能简单:

function show_guest_notice()
{
    if(!is_user_logged_in())
    {
        echo(\'No way, man!\');
        die();
    }
}

add_action(\'get_header\', \'show_guest_notice\');
它也失败了。

看来is_user_logged_in() 或字符串用户cookie在具有域映射插件的多站点上失败。

我看到了this post 然后用amontobin回答是域映射cookie问题。现在工作正常了,但它只向我保证,使用多站点和域映射是这些问题的根源,但它并没有带来解决方案。

那么,有谁能帮助我,或者知道如何让网站膨胀吗(is_user_logged_in()) 在启用域映射插件的多站点网络上工作?

2 个回复
最合适的回答,由SO网友:fuxia 整理而成

目前我手头没有测试安装上的域映射,但应该工作的是:

add_action( \'template_redirect\', \'auth_redirect\' );
作为此处的插件:T5 Force Log In.
auth_redirect() 是WordPress用于身份验证的本机处理程序,如果它不起作用,则表示核心代码中有问题。

SO网友:bueltge

您可以使用插件Authenticator, 它也适用于多站点
如果通过oauth或kex发布内容的不同部分,请使用development version.

结束

相关推荐

Protect Uploads in Multisite

我正在使用WordPress multisite(3.3.1),并试图保护从某些博客上传的内容不被热链接和直接访问。这与How to Protect Uploads, if User is not Logged In?, 但我只想通过服务器上运行的脚本访问上传内容(即,只有服务器可以显示/提供上传服务),因此内容可以受到WordPress用户权限的保护。例如,我有一个名为40c的字段。jpg位于localhost/files/2011/07/40c。jpg;我想让文件显示出来only 在本地域上由HTML

为未注册用户锁定其中一个WP网络站点 - 小码农CODE - 行之有效找到问题解决它

为未注册用户锁定其中一个WP网络站点

时间:2012-11-09 作者:trejder

我有一个博客网络(Multisite),安装了域映射插件,我的一些网站正在开发中,所以我想对未注册的用户锁定它们。

我测试了几个为此目的而设计的插件(仅专用插件、专用WP套件、专用WP套件、仅限成员插件、仅限注册用户插件、绝对隐私插件和专用插件),但都失败了。

我访问了该网站,看到了登录表单,填写了它,标记了“记住我”,然后登录,我被重定向到仪表板(用户部分),而不是网站本身。当我重新输入站点URL(域)时,我再次看到了登录页面,尽管我标记了“记住我”。我无法访问网站本身。

我甚至为此编写了自己的插件,尽可能简单:

function show_guest_notice()
{
    if(!is_user_logged_in())
    {
        echo(\'No way, man!\');
        die();
    }
}

add_action(\'get_header\', \'show_guest_notice\');
它也失败了。

看来is_user_logged_in() 或字符串用户cookie在具有域映射插件的多站点上失败。

我看到了this post 然后用amontobin回答是域映射cookie问题。现在工作正常了,但它只向我保证,使用多站点和域映射是这些问题的根源,但它并没有带来解决方案。

那么,有谁能帮助我,或者知道如何让网站膨胀吗(is_user_logged_in()) 在启用域映射插件的多站点网络上工作?

2 个回复
最合适的回答,由SO网友:fuxia 整理而成

目前我手头没有测试安装上的域映射,但应该工作的是:

add_action( \'template_redirect\', \'auth_redirect\' );
作为此处的插件:T5 Force Log In.
auth_redirect() 是WordPress用于身份验证的本机处理程序,如果它不起作用,则表示核心代码中有问题。

SO网友:bueltge

您可以使用插件Authenticator, 它也适用于多站点
如果通过oauth或kex发布内容的不同部分,请使用development version.