1. <optgroup id="1j155"><li id="1j155"><source id="1j155"></source></li></optgroup><track id="1j155"></track>
          <acronym id="1j155"></acronym>
            首頁 / WordPress建站 / 用戶交互 / WordPress 禁止多人同時登錄一個賬號,可設定最大登錄數
            Loading收藏0

            對于會員制的網站,盡可能避免多人同時登錄一個會員賬號應該是比較需要的,倡萌此前已經分享過?Prevent Concurrent Logins?和?Wp Single Login?兩個插件,都可以滿足需求,只是這兩個插件很久沒有更新了,不知道和新版的WP兼容如何,今天倡萌再推薦一個類似插件?Loggedin,和之前兩個不太一樣的是,它支持設置最大活躍登錄數,也就是一個賬號允許多少個客戶端同時登錄,還可以通過鉤子排除掉一些用和用戶角色。已測試兼容 WordPress 5.0+

            Loggedin 使用很簡單,直接在后臺插件安裝界面搜索?Loggedin 即可在線安裝,或者到官方下載?https://wordpress.org/plugins/loggedin/,啟用插件后,在 設置 – 常規 界面,就可以看到設置選項:

            一旦有多個人(客戶端)登錄同一個賬號,超過了設定的活躍登錄數,就會出現如下提示:

            倡萌已經該插件漢化,點擊下載簡體中文包,解壓后將里面的文件上傳到 wp-content/languages/plugins 目錄即可生效,同時避免插件升級時丟失語言。

            下面分享下官方提供的排除用戶和用戶角色的代碼示例,按照需求修改好代碼,然后添加到主題的 functions.php 文件即可:

            排除某些用戶

            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            
            //排除某些用戶,不受最大活躍登錄數限制
            function f_loggedin_bypass_users( $bypass, $user_id ) {
             
                // 在 array( ) 中輸入用戶id,多個id用英文逗號隔開
                $allowed_users = array( 1, 2, 3, 4, 5 ); 
                return in_array( $user_id, $allowed_users );
             
            }
             
            add_filter( 'loggedin_bypass', 'f_loggedin_bypass_users', 10, 2 );

            排除某些用戶角色

            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            
            //排除某些用戶角色,不受最大活躍登錄數限制
            function f_loggedin_bypass_roles( $prevent, $user_id ) {
             
                // 在 array( ) 中輸入用角色名,多個用戶角色使用英文逗號隔開
                $allowed_roles = array( 'administrator', 'editor' ); 
                $user = get_user_by( 'id', $user_id );
             
                $roles = ! empty( $user->roles ) ? $user->roles : array();
             
                return ! empty( array_intersect( $roles, $allowed_roles ) );
             
            }
             
            add_filter( 'loggedin_bypass', 'f_loggedin_bypass_roles', 10, 2 );

            聲明:本文為 倡萌@WordPress大學 原創,未經許可,禁止轉載或他用!

            你可能還喜歡

            1 條評論

            1. 限制用戶多臺設備登陸的插件還是有用的,在一些會員站點里,會有分享自己的賬號給別人使用的情況。使用了這一類的插件后,兩人就不可以同時在線了。

            發表評論

            我們是靠譜的WordPress建站團隊!

            專業承接WordPress網站建設及運維、WordPress主題和插件開發、漢化、安裝等服務

            聯系電話:189-3334-7774

            查看所有服務項目

            視頻教程: 點擊聯系我們
            建站咨詢: 點擊聯系我們
            售后支持: 點擊聯系我們
            廣告合作: 點擊聯系我們

            建站咨詢:189-3334-7774

            固定電話:0773-8282-430

            售后支持:133-0773-9152

            微信掃一掃,聯系我們

            丁香网