¿Cómo reorganizar los menús del panel de WordPress?
El panel de WordPress tiene que ser tu mejor amigo en lo que la gestión y control del contenido de tu web y configuraciones se refiere… pero tal vez no te guste cómo viene ordenado por defecto. ;-(
O lo que es peor… cuantos más plugins instalas, más y más menús aparecen caprichosamente como por arte de magia por donde les da la gana… bueno en realidad, del modo que el desarrollador de cada plugin lo haya decidido y de las interacciones de unos con otros.
En definitiva, mejorará tu productividad, o al menos tu estado de calma, si puedes ordenar las cosas a tu gusto del mejor modo que consideres al reorganizar los menús del panel de WordPress.
El problema a priori es que WordPress por defecto no permite ningún tipo de configuración ni personalización al respecto… pero como podrás imaginar, siempre hay formas de poder hacerlo con plugins o código.
Una forma muy rápida y sencilla es instalar algún plugin, como por ejemplo Admin Menu Manager que con sólo instalarlo te permite arrastrar los elementos del menú a la posición que tu elijas. 😉
Si esto te sabe a poco, hay otro plugin muy potente llamado Admin Menu Editor, con el que puedes hacer prácticamente lo que imagines ( especialmente con la versión PRO que permite configuraciones por roles de usuarios), en lo que a gestionar y reorganizar menús se refiere.
Además podrás esconder menús, arrastrar elementos de uno a otro, colocar separadores e incluso crear tus propios menús, elementos y subelementos.
Pero… si lo que buscas es poder reorganizar los menús del panel de WordPress del modo más rápido y eficaz sin depender de plugins, lo mejor es usar un poco de código.
Puedes re-ordenarlos fácilmente con el siguiente código que te dejo aquí. Sólo tienes que re-ordenar en el orden que prefieras las líneas de código del array que se retorna.
//Activar filtro menús
add_filter( 'custom_menu_order', '__return_true' );
add_filter( 'menu_order', 'pc_nuevo_orden_menus_administracion' );
/**
* Modificar orden por defecto de los menús
*/
function pc_nuevo_orden_menus_administracion($menu_ord) {
if (!$menu_ord) return true;
return array(
'index.php', // Escritorio
'separator1', // Primer separador
'edit.php', // Entradas
'edit.php?post_type=page', // Páginas
'separator2', // Segundo separador
'upload.php', // Media
'edit-comments.php', // Commentarios
'themes.php', // Apariencia
'admin.php?page=wpseo_dashboard', // Yoast SEO
'plugins.php', // Plugins
'users.php', // Usuarios
'options-general.php', // Ajustes
'tools.php', // Herramientas
'separator-last', // Último separador
);
}
Y si te animas con el código, también puedes ocultar todos los menús y sub-menús que quieras, con sólo fijarte en la URL de la página correspondiente a cada apartado del menú a ocultar. Te indico en el siguiente código con varias líneas de ejemplo un montón de apartados a ocultar; sólo deja lo que te interese. 😉
add_action( 'admin_menu', 'ocultar_menus_administracion' );
/**
* Ocultar menús panel administración WordPress
*/
function ocultar_menus_administracion(){
remove_menu_page( 'index.php' ); //Escritorio
remove_menu_page( 'edit.php' ); //Entradas
remove_menu_page( 'upload.php' ); //Multimedia
remove_menu_page( 'edit.php?post_type=page' ); //Páginas
remove_menu_page( 'edit-comments.php' ); //Comentarios
remove_menu_page( 'themes.php' ); //Apariencia
remove_menu_page( 'plugins.php' ); //Plugins
remove_menu_page( 'users.php' ); //Usuarios
remove_menu_page( 'tools.php' ); //Herramientas
remove_menu_page( 'options-general.php' ); //Ajustes
//Ejemplos menús algunos plugins(ver URLs)
remove_menu_page( 'Wordfence' ); //WordFence
remove_menu_page( 'jetpatck.php' ); //JetPack
remove_menu_page( 'wpseo_dashboard' ); //Yoast SEO
remove_menu_page( 'w3tc_dashboard' ); //W3Total Cache
}
add_action( 'admin_menu', 'ocultar_submenus_administracion' );
/**
* Ocultar submenús panel administración WordPress
*/
function ocultar_submenus_administracion() {
//Dejar sólo las líneas necesarias
remove_submenu_page( 'themes.php', 'theme-editor.php' ); //Editor de temas
remove_submenu_page( 'themes.php', 'themes.php' ); //Selector de temas
remove_submenu_page( 'edit.php', 'edit-tags.php?taxonomy=post_tag' ); //Página admin de etiquetas
remove_submenu_page( 'edit.php', 'edit-tags.php?taxonomy=category' ); //Página admin de categorías
remove_submenu_page( 'edit.php', 'post-new.php' ); //Añadir nueva
remove_submenu_page( 'themes.php', 'nav-menus.php' ); //Apariencia -> Menús
remove_submenu_page( 'themes.php', 'widgets.php' ); //Apariencia -> Widgets
remove_submenu_page( 'plugins.php', 'plugin-editor.php' ); //Editor de plugins
remove_submenu_page( 'plugins.php', 'plugin-install.php' ); //Instalar plugins
remove_submenu_page( 'users.php', 'user-new.php' ); //Añadir usuario
remove_submenu_page( 'upload.php', 'media-new.php' ); //Añadir medios
remove_submenu_page( 'options-general.php', 'options-writing.php' ); //Ajustes de escritura
remove_submenu_page( 'options-general.php', 'options-discussion.php' ); //Ajustes de comentarios
remove_submenu_page( 'options-general.php', 'options-reading.php' ); //Ajustes de lectura
remove_submenu_page( 'options-general.php', 'options-media.php' ); //Ajustes de medios
remove_submenu_page( 'options-general.php', 'options-privacy.php' ); //Ajustes de privacidad
remove_submenu_page( 'options-general.php', 'options-permalinks.php' ); //Ajustes de enlaces permanentes
remove_submenu_page( 'index.php', 'update-core.php' ); //Actualizaciones
}
Para terminar te dejo un enlace por si también quieres saber: ¿Cómo personalizar el escritorio de WordPress?.
Si te ha gustado... ¡Compártelo!