Suporte » Desenvolvendo com WordPress » Adicionar menu no painel para EDITORES
Adicionar menu no painel para EDITORES
-
Pessoal criei umas páginas em php e gostaria de adicionar um menu chamado
Gerenciador e com dois subitens (Logotipos e Alerta) que só apareça para editores ou usuários acima disto. só que eu preciso que ao clicar neles
o painel carrega a minha página .php que está em outro diretorio abaixo (../web/minha.php) e carrega ela no canto esquerdo?
-
me ajuda ai? preciso saber como utilizar corretamente as funções add_menu_page e add_submenu_page? não encontrei nada ?
O tema twentyeleven que vem com o WP possui um painel, estude ele para ver uma forma de fazer o que vc quer.
Copie o arquivo e vá alterando para saber o que cada coisa faz, desta forma vc vai descobrindo como fazer e quando tiver uma dúvida mais específica podemos lhe ajudar melhor, pois descrever como se faz um painel completo aqui é meio complicado.
Não é um painel inteiro. quero saber como utilizar as funções add_menu_Page e add_submenu_Page. entendeu?
é só adicionar mais um menu no painel do wp.
Aqui vc pode ver sobre as funções
add_menu_page
http://codex.wordpress.org/Function_Reference/add_menu_pageadd_submenu_page
http://codex.wordpress.org/Function_Reference/add_submenu_pageOs parâmetros que vc vai usar depende de que modo vc está fazendo seu painel e nome do arquivo e funções que está usando para criar todo o painel.
então já tendei com o wiki. mas não funciona.
add_menu_page('Gerenciador', 'Logotipos', 'edit_pages', 'page=' . WPMANAGERPATH . 'wpm_bottom_banner.php');
Porem o link fica ?page=?page=meuendreco
vc deve fazer assim
add_theme_page("Gerenciador", "Logotipos", 'edit_themes', basename(__FILE__), 'wpm_admin_page');
Na ordem que fiz os parâmetros devem ser
Gerenciador = Título da página (texto simples)
Logotipos = Texto do link do menu (Texto simples)
edit_themes = Capacidade do usuário que poderá editar esta página ( edit_themes refere-se ao administrador somente )
basename(__FILE__) = Gera o nome do arquivo que será usado para gerar o painel
wpm_admin_page = esta é a função que irá gerar todo o html do painelEntendi. agora sobre submenus. como devo utiliza-los.
outra pergunta é que se eu deixar essas funções em outro arquivo. em outro diretorio. um include_once bastaria para ele pegar essas funções?não costumo usar sub-menus, mas se não me engano é só colocar o nome do arquivo antes do título do menu principal assim
add_theme_page( “arquivo.php”, “Gerenciador”, “Logotipos”, ‘edit_themes’, basename(__FILE__), ‘wpm_admin_page’);
obviamente arquivo.php seria o nome que vc deu ao seu arquivos.
Se estiver errado veja as páginas que listei lá no começo do tópico, pois não tenho certeza se é só isso.
ata e sobre os includes. (PERGUNTA ACIMA EU EDITEI)
Sim, bastaria desde que respeite a ordem de onde o include_once e funções são chamadas.
primeiro chama os includes e depois as funções, se houver casos que esta ordem não estiver correta dará mensagem de erro.
dá uma olhada:
// Função que Adiciona os Menus function wpmanager_addmenus() { add_theme_page(__("Gerenciador"), __("Logotipos"), 'edit_themes', basename(__FILE__), 'wpmanager_logos'); } // Logotipos // function wpmanager_logos() { include_once(site_url() . '/web/libs/wpmanager/wpm_bottom_logos.php'); WPMBLogosWizard(); } // Adiciona uma Ação para a Função que coloca o item // add_action('admin_menu','wpmanager_addmenus');
Adiciona o menu certinho porem quando eu clico ele ao invés de disparar a minha função ele chama a função do tema que abre a página do tema?
eu queria colocar esse script em outro arquivo. e só chamar ele pelo functions do tema: include(site_url(‘/web/libs/wpmanager/wpm.php’));
não funciona
Eu alterei um pouco para isso:
function custom_clic_settings($page) { echo '<iframe allowtransparency="1" frameborder="0" height="768" width="1024" src="' . site_url('/web/libs/clicsettings/$page') . '> </iframe>'; } function clic_logotipos() { custom_clic_settings('logotipos.php'); } function clic_menus() { add_submenu_page( 'edit.php?post_type=page', 'Clic >> Logotipos', 'Clic >> Logotipos', 'edit_pages', basename(__FILE__), 'clic_logotipos'); } add_action( 'admin_menu', 'clic_menus' );
Mesmo assim não funciona. ele abre a página do menu do tema que (Boldy Options)
Me baseando no primeiro código, acredito que o erro esteja no arquivo wpm_bottom_logos.php
e WPMBLogosWizard(); eu não sei o que é, então não sei se está atrapalhando ou não.
Outra coisa, se vai usar include use TEMPLATEPATH e não site_url(); que em alguns lugares pode não retornar nada.
na função function wpmanager_addmenus() que vc adiciona o menu não é só isso, esta função ( dependendo do modelo que vc está fazendo ) também gera os códigos para o salvamento das opções e um redirecionamento para a página que se deseja ir após salvar/resetar/deletar opções.
- O tópico ‘Adicionar menu no painel para EDITORES’ está fechado para novas respostas.