我的一個客戶正在使用Woocommerce運行wordpress網站。最近我被要求以其用戶之一的身份登錄,以便複製問題。WordPress的:爲什麼訂戶可以看到管理面板?
我發現的是,我可以鍵入/ wp-admin,它只是把我帶到完整的管理面板,我擁有與管理員相同的菜單項。這顯然是非常嚴重的,因爲如果任何用戶知道這一點,他們可以把網站放下,如果他們想要的話。
在試圖阻止他們,我把下面的腳本在functions.php文件:
// Redirect non-admins away from wp-admin
add_action('init', 'blockusers_init');
function blockusers_init() {
$current_user = wp_get_current_user();
if (is_admin() && ! current_user_can('administrator') && ! (defined('DOING_AJAX') && DOING_AJAX)) {
wp_redirect(home_url());
exit;
}
}
爲具有「用戶」的角色,current_user_can(「管理員」用戶登錄後)返回false如果我在網站的前端,並且返回如果我轉到/ wp-admin,則返回true。
由於當前用戶只是一個訂閱者,我認爲它應該在任何地方都返回false。
我有點卡住了......我不知道接下來應該看什麼。 (我嘗試了像禁用所有插件一樣的東西,但問題仍然存在)。你們有什麼想法我應該接下來嘗試嗎?
您是否點擊了管理面板並確認它實際上是管理面板而不是個人用戶設置管理面板? –
您是否在常規設置中選中了「新用戶默認角色」選項? – JazZ