WordPress登錄才能查看網站內容,未登錄就跳轉到登錄頁面。有這樣需求的人還不少,一般都是用在WordPress博客主題,有的可能是資料類什么的,有的人就是用來搞擦邊球,對于WordPress企業主題的用戶基本上是沒有什么需求的。
實現代碼很簡單,找一個全站一定會執行的鉤子即可,這里我們就選了一個template_redirect鉤子,這個動作鉤子在加載模板時執行,當然其它很多都可以用。
[php]//template_redirect動作鉤子是一定會執行的,所以用這個鉤子對全站有效
add_action( 'template_redirect', 'ashuwp_show_only_login', 0 );
function ashuwp_show_only_login(){
//判斷登錄
if( !is_user_logged_in() ){
auth_redirect(); //跳轉到登錄頁面
exit();
}
}[/php]
更復雜的需求,有人需要整站再留一兩個頁面,比如留個“公告說明”頁面提供訪問,那在判斷登錄的代碼里面增加一個頁面判斷即可,范例:
[php]//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();
}
}[/php]
新主題官方微信公眾號
掃碼關注新主題(XinTheme)官方公眾號,本站動態早知道。
發布本站最新動態(新主題發布、主題更新)和WordPress相關技術文章。