Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Anderson Narciso

Criando menus e páginas administrativas no WordPress!

Recommended Posts

Olá pessoal! Estava lendo o imasters oficial e me deparei com algo super interessante em relação a Wordpress. Como criar menus e páginas administrativas no WordPress... Então vamos direto ao assunto!

 

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:

 

1. Criar uma função no arquivo do plugin contendo os códigos utilizados para criar os menus;

2. Registrar tal função através da add_action() usando o gancho "admin_menu";

3. Criar o HTML da página a ser exibida quando o menu for clicado.

 

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], );

 

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 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:

 

* post-new.php - add_submenu_page( 'post-new.php', ...

* themes.php - add_submenu_page( 'themes.php', ...

* edit-comments.php - add_submenu_page( 'edit-comments.php', ...

* options-general.php - add_submenu_page( 'options-general.php', ...

* plugins.php - add_submenu_page( 'plugins.php', ...

* users.php - add_submenu_page( 'users.php', ...

 

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.

 

Fonte: Imasters.com.br

Autor: Leadro Vieira

Compartilhar este post


Link para o post
Compartilhar em outros sites

Maneiro Anderson!

Outra dica, caso você crie uma página "Portfolio" ou mesmo páginas já pré-formatadas ( que ajudam muito seu cliente), basta inserir no início do script está tag

 

<?php 
/*
Template Name: Minha Pagina
*/
?>

Ai você salva dentro da sua pasta do template, vai no administrador do wordpress clica em "Páginas > Adicionar Nova", ao lado direito, no segundo item de funções ( Page Attributes ) vá no "Select" de "Modelo" e você vai ver sua nova página lá!

:)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.