Antes de iniciarmos este artigo, gostaria de lembrá-lo sobre o curso Desenvolvimento de Plugins para WordPress comigo, Leandro Vieira, no iMasters PRO. O treinamento vai mostrar a utilidade e o desenvolvimento de Plugins WordPress, visando desmitificar a criação e modificação deles. Durante as aulas, serão apresentadas práticas inteligentes, métodos de desenvolvimento, e a utilização de JavaScript, Ajax e CSS. Ao fim do curso, os alunos estarão aptos a criar e modificar plugins WordPress existentes no mercado.
Agora, vamos ao artigo da semana.
Alguns plugins precisam ser configurados. Não seria interessante sugerir
ao usuário que mudasse o valor de uma ou outra variável no arquivo PHP
do plugin para configurá-lo como desejado. O WordPress permite que
páginas administrativas sejam criadas e através delas podemos
disponibilizar ao usuário uma interface que o permite configurar e
interagir com o plugin.
Os menus administrativos do WordPress são
criados "on the fly", ou seja, eles são recriados a cada acesso a uma
das páginas da administração. Os menus são dinâmicos e permitem serem
modificados ou acrescentando novos itens e subitens.
Para
criarmos menus e páginas administrativas precisamos executar as seguintes
tarefas:
Vejamos um exemplo ilustrativo dessas tarefas.
<?php
// ...
function
prefixo_funcao_menu()
{
add_options_page( 'Título na tag title', 'Título no menu', 10,
'identificao-unica', 'prefixo_funcao_conteudo' );
}
function prefixo_funcao_conteudo()
{
echo '<div class="wrap">';
echo '...';
}
add_action( 'admin_menu', 'prefixo_funcao_menu' );
?>No exemplo acima temos duas funções: prefixo_funcao_menu() e prefixo_funcao_conteudo().
A primeira foi registrada junto ao gancho "admin_menu" através da add_action() e quando chamada criará um novo item ao menu de Configurações através da função add_options_page().
A segunda é chamada pela função add_options_page() no quinto parâmetro e responsável por imprimir na tela o HTML da página.
O HTML da página poderia estar contido num arquivo em vez de estar englobado numa função como no exemplo acima. Neste caso a função add_options_page() deveria ser utilizada da seguinte forma:
add_options_page(
'Título na tag title', 'Título no menu', 10,
'arquivo-da-pagina-opcao.php' );Há várias funções utilizadas para criar itens de menu em locais específicos bem como para criar novos grupos de menu, o que chamamos de "top-level menu". Essa última opção é utilizada quando o plugin possui várias páginas e optamos por mantê-las relacionadas e organizadas.
Vejamos então como criar novos grupos de menu ou "top-level menu". Há duas funções para esse propósito, são elas: add_menu_page() e add_submenu_page(). Essa segunda adiciona novos itens de menu ao menu principal criado com a primeira.
Observe os códigos abaixo responsáveis por criarem um novo grupo de menu com um submenu.
<?php
// ...
function prefixo_funcao_menu()
{
add_menu_page( 'Título na tag title', 'Título no menu', 10,
'pasta-plugin/treinamentos.php' );
add_submenu_page(
'pasta-plugin/treinamentos.php', 'Título na tag title', 'Título no
submenu', 10, 'pasta-plugin/inscricao.php' );
}
add_action( 'admin_menu',
'prefixo_funcao_menu' );
?>Antes de compreendermos o código acima, vamos conhecer os parâmetros das funções utilizadas.
add_menu_page( título página, título menu, nível de acesso, arquivo, [função], [url ícone] );
título página
O título da página utilizado junto a tag <title> quando o menu estiver ativo.
título menu
O título do menu que acabara de ser criado.
nível de acesso
O nível de acesso mínimo necessário para exibir e utilizar a página.
arquivo
Arquivo que exibe o conteúdo da página do menu.
[função]
Função que exibe o conteúdo da página do menu.
[url ícone]
URL do ícone personalizado a ser utilizado no menu. Funciona a partir da versão 2.7 do WordPress.
O conteúdo da página do menu pode ser fornecido por um arquivo ou por uma função. Observe que o quarto arquivo, e o quinto, [função], parâmetro têm o mesmo objetivo. Se esse último que é opcional não for informado, o WordPress considera que o conteúdo da página será gerado pelo arquivo sem a necessidade de chamar uma função.
Fica a seu critério de qual o melhor método para você exibir o conteúdo da página. Este que vos escreve tem uma preferência por utilizar um arquivo.
add_submenu_page( pai, título página,
título menu, nível de acesso, arquivo, [função] );pai
O nome do arquivo utilizado na administração do WordPress que compõe um grupo de menu (top-level) o qual você deseja incluir seu submenu. Você pode informar arquivos nativos do WordPress ou os criados por você.
Os arquivos nativos e mais comum, são:
título página
O título da página utilizado junto a tag <title> quando o submenu estiver ativo.
título menu
O título do submenu que acabara de ser criado.
nível de acesso
O nível de acesso mínimo necessário para exibir e utilizar a página.
arquivo
Arquivo que exibe o conteúdo da página do submenu.
[função]
Função que exibe o conteúdo da página do submenu.
Se você utilizar uma função para exibir o conteúdo do submenu, informe no parâmetro do arquivo (o quarto) uma identificação única do seu plugin. Um exemplo:
add_submenu_page(
'users.php', 'título página', 'título menu', 10, __FILE__,
'exibe_pagina_submenu' );
add_submenu_page( 'users.php', 'título
página', 'título menu', 10, 'identificao-unica', 'exibe_pagina_submenu'
);Neste artigo conhecemos o procedimento para a criação de menus e páginas administrativas no WordPress. No curso Desenvolvimento de Plugins para WordPress você aprenderá outras técnicas importantes, atuais e criativas para o desenvolvimento de plugins nessa plataforma. Até lá!
Carlos
Copiaram seu texto aqui:
http://www.thiagotoledo.com/phprio/feed.php?id=1282
Abraços.
maneco
Uns fazem outros copiam! E se copiam é porque é bom!
2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.