Código php:
¡Felicitaciones! acabas de volar el menú Entradas en tu panel de administración. Ahora vamos con la parte teórica:Ver original
add_action('admin_menu' , 'adios_entradas'); function adios_entradas() { global $menu; }
En el núcleo de WordPress se asigna posiciones predeterminadas para los menús nativos de la administración. Dichas posiciones son:
Código PHP:
5 - Entradas
10 - Multimedia
15 - Enlaces
20 - Páginas
25 - Comentarios
60 - Primer separador
65 - Plugins
70 - Usuarios
75 - Herramientas
80 - Ajustes
100 - Segundo separador
Código php:
Ver original
¿Aún quieres más? Vamos con algo un poquito más complicado. Ocultaremos estos mismos menús sólo a los usuarios con rol de Autor:
Código php:
Ver original
Nota: Este procedimiento sólo oculta los menús. Las funciones siguen manteniéndose accesibles. Si deseas suprimir el acceso totalmente, te recomiendo crear nuevos roles y configurarlos a conveniencia. Para gestionar bien esta part te recomiendo el plugin User Role Editor.
Nota 2: Si es el caso, sustituye "wp_capabilities" por [prefijo]_capabilities.
Submenús
Eliminarlos
Vamos a eliminar el submenú "Añadir nueva entrada":
Código PHP:
Ver original
add_action('admin_menu' , 'adios_submenu'); function adios_submenu() { global $submenu; }
La explicación: WordPress establece los incrementos son de 5 en 5, donde [0] es el título del menú padre. Es natural esperar que el sistema reserva de manera estática los primeros puestos para los submenús nativos (lo que no impide que sobrescribas lo que sea). El resto se maneja con un bucle en incrementos de 5.
En este punto, el archivo /wp-admin/menu.php resulta una excelente referencia porque puedes identificar fácilmente las variables correspondientes. Por ejemplo, los submenús de "Páginas" están expresados así:
Código PHP:
Ver original
$submenu['edit.php?post_type=page']['numero de posición'];
Agregarlos:
Asignemos un submenú extra al menú "Entradas":
Código PHP:
Ver original
add_action('admin_menu' , 'agregar_submenu'); function agregar_submenu() { global $submenu; }
Listo. El parámetro es simple de configurar:
Código PHP:
Ver original
Probando todo esto noté que al agregar submenús, el sistema ignora los parámetros de prioridad de add_action() y de todas formas lo ubica de último en la lista.
De interés:
- Lista de roles y niveles de acceso: http://codex.wordpress.org/Roles_and_Capabilities
- Estructura de base de datos para _users y _usermeta: http://codex.wordpress.org/Database_...e:_wp_usermeta