Ocultar el panel de control de usuarios no administradores

8

¿Es posible ocultar completamente el panel de control de los usuarios que no son administradores y darles acceso solo a la página Nueva publicación y editar publicaciones? Gracias.

arrendajo
fuente

Respuestas:

17

En cuanto a la facilidad de uso, especialmente para los administradores de WordPress no demasiado firmes en PHP, secundo la recomendación del complemento de brasoflo ( Administrar ).

En aras de la exhaustividad, así es como se haría mediante programación:

/* Remove the "Dashboard" from the admin menu for non-admin users */
function wpse52752_remove_dashboard () {
    global $current_user, $menu, $submenu;
    get_currentuserinfo();

    if( ! in_array( 'administrator', $current_user->roles ) ) {
        reset( $menu );
        $page = key( $menu );
        while( ( __( 'Dashboard' ) != $menu[$page][0] ) && next( $menu ) ) {
            $page = key( $menu );
        }
        if( __( 'Dashboard' ) == $menu[$page][0] ) {
            unset( $menu[$page] );
        }
        reset($menu);
        $page = key($menu);
        while ( ! $current_user->has_cap( $menu[$page][1] ) && next( $menu ) ) {
            $page = key( $menu );
        }
        if ( preg_match( '#wp-admin/?(index.php)?$#', $_SERVER['REQUEST_URI'] ) &&
            ( 'index.php' != $menu[$page][2] ) ) {
                wp_redirect( get_option( 'siteurl' ) . '/wp-admin/edit.php');
        }
    }
}
add_action('admin_menu', 'wpse52752_remove_dashboard');
Johannes Pille
fuente
3

Puede usar el complemento Administrar para hacer eso.

Es posible ocultar el Tablero (y muchas otras cosas) en función del rol del usuario. En caso de ocultar el Panel, puede definir a qué página se redirigirá al usuario.

No estoy seguro, pero creo que no puede modificar los roles de usuario para bloquear el Panel de control (ya que incluso el rol más bajo tiene acceso a él).

Pero si combina Adminimize con un complemento Role, puede lograr una interfaz administrativa muy precisa.

brasofilo
fuente
@JohannesPille: no hay una sola instalación de WordPress que haya realizado que no ejecute Adminimize. Y no puedo alabarlo lo suficiente :)
brasofilo
0

¡Esas 2 páginas también son parte del tablero! Si está dando acceso a editar publicaciones, significa que está dando acceso a la lista de publicaciones. El rol con la capacidad más baja, suscriptor, también tiene acceso a la página de perfil, que también forma parte del tablero. Su mejor opción sería un formulario de edición de perfil / adición de publicación frontal.

Rutwick Gangurde
fuente
1
Eso depende de cómo defina el "tablero", un término que es algo ambiguo, incluso en el contexto de WP. Puede referirse a todo el wp-admin, que parece ser cómo interpretó la pregunta, o a la página superior del menú de administración. En el último caso, la página del menú puede estar oculta.
Johannes Pille
0

puede usar un complemento llamado "Editor de roles de usuario" ... No puede evitar el tablero para darles acceso a la Nueva publicación ... Pero puede limitar su rol ...

Nasir Zia
fuente