Quitar menús de administración de WordPress

Con las posibilidades de personalización de WordPress, y especialmente si has creado tipos de entrada personalizados, suele pasar que dejan de tener sentido menús estándar de la instalación de WordPress.

Me refiero a menús como el de Enlaces, Entradas o incluso el de comentarios, pero puede ser cualquier otro que no tenga sentido en tu administración, especialmente si está personalizada para un cliente.

Una situación muy habitual es cuando creas un tipo de entrada personalizada, digamos «Productos -> Nuevo producto«, y de repente te sobra «la chincheta» del menú de las entradas, y de paso también el enlace a «+ Nuevo» y sus submenús para la creación de enlaces, entradas, etc.

Afortunadamente es muy fácil eliminar esos menús, solo tienes que añadir el siguiente código a tu plugin de funciones o al fichero functions.php de tu tema:

//Eliminar menús que sobran
add_action( 'admin_init', 'quitar_menus' );
function quitar_menus() { 
remove_menu_page('edit.php');
remove_menu_page('link-manager.php');
}

En este ejemplo estamos quitando el enlace a la ventana de entradas, a la de comentarios y al gestor de enlaces, ahí es nada, pero puedes modificarlo simplemente añadiendo o quitando líneas. Como ves es muy fácil, solo tienes que indicar la URL de la página a eliminar de los enlaces de menú.

Ahora solo te quedarían los enlaces a tus tipos de entradas personalizadas, o lo que hayas añadido. Y si no sabes como añadirlos sería algo así:

//Añadir menus de tipo de entrada personalizada
function nuevo_enlace_barra_admin() {
	global $wp_admin_bar;
	if ( !is_super_admin() || !is_admin_bar_showing() )
		return;
	$wp_admin_bar->add_menu( array(
	'id' => 'nuevo_menu_producto', // Puede ser cualquier cosa pero debe ser único
	'title' => __( 'Añadir productos'), //Esto es lo que se verá en el menú
	'href' => __('http://miweb.com/wp-admin/post-new.php?post_type=productos'),
	));
	// Añadimos nuevo submenú de "Ver todos los productos"
	$wp_admin_bar->add_menu( array(
		'parent' => 'nuevo_menu_producto', // El ID único del menú superior
		'id'     => 'ver_todos_los_productos',
		'title' => __( 'Ver todos los productos'),
		'href' => __('http://miweb.com/wp-admin/edit.php?post_type=productos'),
	));
	// Añadir nuevo enlace a "Secciones"
	$wp_admin_bar->add_menu( array(
		'parent' => 'nuevo_menu_producto',
		'id'     => 'mis_secciones',
		'title' => __( 'Secciones'),
		'href' => __('http://mieb.com/wp-admin/edit-tags.php?taxonomy=Seccion&post_type=productos'),
	));
}
add_action('admin_bar_menu', 'nuevo_enlace_barra_admin',25);

Y nada más, guardamos los cambios y ya tendremos un escritorio de administración con lo que importa y sin lo que sobra.

VALORA Y COMPARTE ESTE ARTÍCULO PARA MEJORAR LA CALIDAD DEL BLOG…
(3 votos, promedio: 3.7)

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

AVISO: Esta publicación es de hace 3 años o más. Si es un código o un plugin podría no funcionar en las últimas versiones de WordPress, y si es una noticia podría estar ya obsoleta. Luego no digas que no te hemos avisado.

2 comentarios en “Quitar menús de administración de WordPress”

  1. Hola, gracias por la publicacion, tengo una pregunta en relacion a eliminar las entradas de pagina principal, en que parte del codigo functions.php tengo ingresar el codigo para eliminarlas?

  2. Ok, estupendo, gracias. Con el condicional
    [ if (!current_user_can(‘edit_users’)) { ]
    he quitado,[ uploads.php ]
    pero ahora quiero eliminar

    [/wp-admin/admin.php?page=sharing]

    ¿Puedes ayudarme? 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

 

Ir arriba Ir al contenido