🚀 サイト構築が難しい?手取り足取りご案内します——「WordPressサイト構築伴走」サービスを詳しく見る →

WordPressサイトで会員登録とログイン後にのみアクセス可能にする方法

自分でウェブサイトを構築的时候,往往会有下面这两种情况不想要别人查看网站内容。1、纯粹的个人博客,不希望被别人查看。2、某些内部网站,不希望不相关的人访问。3、特殊资源站。 那么如果你是用WordPress搭建的网站,就可以很简单的通过WordPress Plugin实现WordPress登录可见的功能。 下面是奶爸给大家分享的几款实现wordpress需要注册才能观看的插件。

Registered Users Only

Registered Users Only这款插件是在WP建站吧那看到的,插件功能很简单,安装后启用,在没有注册登录的情况下,都会重定向到登录界面。 Registered Users Only 如果你希望开放注册,那么则勾选允许任何人注册,如果你想访客临时可以访问网站内容,那么就勾选访客模式。 ダウンロードURL

Force Login

Force Login更加简单,下载启用后直接开启全站需要登录查看功能,都没有单独的设置页面,启用插件就需要登录查看,禁用插件就不需要登录查看网站内容。 ダウンロードURL

My Private Site

我的私密网站,My Private Site这款插件更加利于资源营销类网站使用,因为它除了可以重定向未登录用户到登录页面,还可以自定义登录界面、自定义注册界面。 除此之外,My Private Site最强大的地方在于可以排除页面,你可以设置首页无需登录即可查看,还可以增加不需要登录即可查看的页面。 同时,如果开启了需要登录才可查看页面,还支持登录后跳转到登录前的页面。 My Private Site简单使用方法介绍: Private Site 勾选,则开启登录访问。 Custom Login 是自定义登陆页面的选项。 Visible Exclusions 是排除页面的选项。 ダウンロードURL

按需显示隐藏

如果你想自己设置显示特定内容和隐藏特定内容的方法,那么可以使用Wicked Block Conditions 用代码的话就下面这个
add_shortcode('hide','loginvisible');
function loginvisible($atts,$content=null){
if(is_user_logged_in() && !is_null($content) && !is_feed())
return $content;
return '';
}
然后文章里面用[hide]和[/hide]包住隐藏内容就可以了。 如果你只是想要简单的从网站首页或者分类页隐藏文章,那么可以参考:WordPressでサイトのトップページやカテゴリーページから特定のPostを非表示にする方法

パスワードを入力して閲覧

如果想实现WordPress文章或者分类或者整个网站需要输入密码才能查看访问,那么可以参见这篇文章:3款WordPress需要密码才能访问网站的插件_密码查看内容

使用代码隐藏分类登录可见

//template_redirect动作钩子是一定会执行的,所以用这个钩子对全站有效
add_action( 'template_redirect', 'ashuwp_show_only_login', 0 );
function ashuwp_show_only_login(){
//判断登录,about页面就允许访问
if( !is_page('about') && !is_user_logged_in() ){
auth_redirect(); //跳转到登录页面
exit();
}
}
如果是分类目录要登录可见,就用下面的代码。
// 首页和指定分类文章可以访问
add_action( 'template_redirect', 'ashuwp_show_only_login', 0 );
function ashuwp_show_only_login(){
//判断登录,只允许访问ID为3和2的分类文章
if( !in_category( array( '3','2' ) ) && !is_home() && !is_user_logged_in() ){
auth_redirect(); //跳转到登录页面
exit();
}
}
!in_category前面的感叹号代表的是不是,意思是说如果不是id为3和2的分类,以及不是首页,没有登录,那么就跳转到登录页面。 代码添加到主题函数模板functions.php中生效。 注意的是,in_category只支持一级目录,如果有子目录,需要全部列出,或者加上下面的判断。
if ( ! function_exists( 'post_is_in_descendant_category' ) ) {
function post_is_in_descendant_category( $cats, $_post = null ) {
foreach ( (array) $cats as $cat ) {
// get_term_children() accepts integer ID only
$descendants = get_term_children( (int) $cat, 'category' );
if ( $descendants && in_category( $descendants, $_post ) )
return true;
}
return false;
}
}
然后这样调用
参考

终极插件

上面的方法一一测试了都不满意?给你推荐一款奶爸目前正在使用的解决方案,一款功能强大的判断插件。 [vk-content] 这款名为Restrict User Access – Membership Plugin with Force的插件,非常适合需要多重判断的又不会自己改写代码的朋友。 可以添加多个判断条件,然后在Members设置用户组,Capabilities里面设置权限,然后保存即可生效。 ダウンロードURL   [/vk-content]

🚀 チュートリアルを見てもまだ迷っていますか?私が直接手を取ってご案内しましょう

「WordPressサイト構築伴走サービス」——ドメイン名の選択、ホスティングの購入から、Themeのインストール、公開、投稿まで、すべてのステップで私が伴走し、遠回りをせずに目標に直行します。

👉 サイト構築伴走サービスについて詳しく知る
🔒

コメントは閉鎖されました

この記事のコメント機能は閉鎖されています。ご質問がある場合は、他の方法でお問い合わせください。

×
二维码

QRコードをスキャンしてフォロー