Como posso estender as funções da barra de administração do WordPress 3.1 nos meus plugins?
Estou procurando por ganchos e filtros específicos para adicionar links ou outros recursos à barra de administração.
Um bom exemplo do que já foi feito é o Yoast WordPress SEO (Wordpress Plugin) .
Atualmente, não há documentação disponível para estender a barra de administração. De acordo com o The Codex, existem dois filtros para desativá-lo ou não mostrá-lo:
no_admin_bar()
& show_admin_bar()
Respostas:
O plug-in do Yoast é realmente um exemplo muito bom se tudo o que você quer fazer é adicionar menus. Basicamente, a barra de administrador é apenas um conjunto alternativo de links para as mesmas páginas de administrador de plug-in que você possui na barra lateral. Para adicionar o menu SEO de nível superior, o Yoast faz o seguinte:
Isso adiciona um menu chamado "wpseo-menu" à barra de administrador e direciona os usuários para o painel do plug-in quando eles clicam no link. Links filho são adicionados de maneira semelhante:
Você acabou de especificar o "pai" do menu que está adicionando.
Depois, você pode ir o mais fundo possível, ligando
$wp_admin_bar->add_menu()
quando necessário e especificando as informações apropriadas.Para referência, a variável,
$wp_admin_bar
é uma instância da classeWP_Admin_Bar()
no WordPress. Ele tem vários métodos e propriedades diferentes, mas o que mais lhe interessa aqui é, obviamenteadd_menu()
,. Este método aceita certos parâmetros:array( 'html' => '', 'class' => '', 'onclick' => '', target => '' );
Mas o resto da
WP_Admin_Bar()
classe é conectável. Depende apenas do que exatamente você está tentando fazer e como deseja fazê-lo.Veja também:
wpseo_admin_bar()
WP_Admin_Bar()
fonte
pequeno exemplo, eu escrevi isso também na lista wp-hackers antes de ver os dias
fonte
Faça o download da compilação noturna e verifique esses dois arquivos;
A classe
WP_Admin_Bar
é essencialmente a 'API', enquanto o arquivo aadmin-bar.php
utiliza para criar a barra padrão e disparar uma carga de ganchos.Isso é basicamente o básico - isso é tudo o que eu reuni de uma olhada rápida (para ser honesto, é um pouco irritante o gancho
admin_bar_menu
não retribuir a instância deWP_Admin_Bar
- eu odeio todos esses globais!)fonte