¿Cómo puedo extender las funciones de la barra de administración de WordPress 3.1 en mis complementos?
Estoy buscando ganchos y filtros específicos para agregar enlaces u otras funciones a la barra de administración.
Un buen ejemplo de lo que ya se ha hecho es Yoast WordPress SEO (Wordpress Plugin) .
Actualmente no hay documentación disponible para extender la barra de administración. Según The Codex, hay dos filtros para apagarlo o no mostrarlo:
no_admin_bar()
Y show_admin_bar()
Respuestas:
El complemento de Yoast es en realidad un muy buen ejemplo si todo lo que quiere hacer es agregar menús. Básicamente, la barra de administración es solo un conjunto alternativo de enlaces a las mismas páginas de administración de complementos que tiene en la barra lateral. Para agregar el menú SEO de nivel superior, Yoast hace lo siguiente:
Esto agrega un menú llamado "wpseo-menu" a la barra de administración y dirige a los usuarios al tablero del complemento cuando hacen clic en el enlace. Los enlaces secundarios se agregan de manera similar:
Simplemente especifique el "padre" del menú que está agregando.
Luego puede ir tan profundo como sea necesario, llamando
$wp_admin_bar->add_menu()
cuando lo necesite y especificando la información adecuada.Como referencia, la variable
$wp_admin_bar
es una instancia de la claseWP_Admin_Bar()
dentro de WordPress. Se dispone de varios métodos y propiedades diferentes, pero el que más nos interesa aquí es, obviamente,add_menu()
. Este método acepta ciertos parámetros:array( 'html' => '', 'class' => '', 'onclick' => '', target => '' );
Pero el resto de la
WP_Admin_Bar()
clase es conectable. Solo depende de qué es exactamente lo que estás tratando de hacer y cómo quieres hacerlo.Ver también:
wpseo_admin_bar()
WP_Admin_Bar()
fuente
pequeño ejemplo, escribí esto también en la lista de wp-hackers antes de ver los días
fuente
Descargue la compilación nocturna y consulte estos dos archivos;
La clase
WP_Admin_Bar
es esencialmente la 'API', mientras que el archivo laadmin-bar.php
usa para construir la barra predeterminada y disparar una carga de ganchos.Eso es más o menos lo básico: esto es todo lo que he recopilado de un vistazo rápido a mí mismo (para ser honesto, es un poco molesto que el gancho
admin_bar_menu
no pase por alto la instancia deWP_Admin_Bar
- ¡Odio a todos estos globales!)fuente