A versão 2.7 o WordPress trouxe as meta boxes,
que são aquelas caixinhas arrastáveis que estão presentes no dashboard,
na área de edição de posts e páginas além de outros locais na área
administrativa do WordPress.
Muitas vezes, na criação de plugins que interagem com os posts ou
páginas, é necessário adicionar um novo campo à área de edição. A fim de
manter a formatação do WordPress, a criação de uma meta box é o caminho
mais limpo e fácil. Também é possível adicionar as meta boxes às páginas
dos seus plugins, mas é uma tarefa um pouco mais complicada, então
vamos deixar para outro artigo.
add_meta_box($id, $title, $callback, $page, $context=’advanced’, $priority=’default’, $callback_args=null);
Essa função é a responsável por adicionar a meta box a uma
determinada página. O $id é o identificador único para o HTML, é com
esse identificador que o WordPress manipulará sua meta box. Já o $title
é o título da meta box, $callback é a sua função que ficará responsável
pelo carregamento do conteúdo dentro da meta box, e $page é a página onde
a sua meta box será carregada (‘page’, ‘post’, ‘link’, etc). Os outros
parâmetros são opcionais: $context define o local da página onde sua
meta box será carregada por padrão (‘normal’, ‘advanced’, ‘side’)
enquanto $priority diz o posicionamento padrão da meta box dentro do
$context (‘high’ ou ‘low’), e por fim $callback_args que permite a
passagem de argumentos à meta box.
Por exemplo, para criar uma meta box que mostre uma frase de
incentivo (não consegui pensar em algo mais simples e útil) na parte de
cima do sidebar da tela de edição de posts, ficaria assim:
add_meta_box('incentivador', 'Incentivador', 'incentive_me', 'post', 'side', 'high');Não se esqueça de criar a função ‘incentive_me’ em seu plugin.
Agora só falta adicionar um gancho para a chamada da meta box:
add_action('do_meta_boxes', 'incentivador_metabox');Onde ‘incentivador_metabox’ é a função que conterá o seu add_meta_box.
O código final ficaria assim:
<?php<br />/*<br />Plugin Name: MetaBox: Incentivador<br />Description: Mostra uma frase<br />Version: 0.1<br />Author: Marcelo Mesquita<br />Author URI: http://www.marcelomesquita.com/<br />*/<br /><br />add_action('do_meta_boxes', 'incentivador_metabox');<br /><br />function incentivador_metabox()<br />{<br /> add_meta_box('incentivador', 'Incentivador', 'incentive_me', 'post', 'side', 'high');<br />}<br /><br />function incentive_me()<br />{<br /> $frases = array(<br /> 'Você consegue!',<br /> 'Faça seu melhor!',<br /> 'Tudo é possível!'<br /> );<br /><br /> print $frases[rand(0, 3)];<br />}<br />?>Para saber mais acesse a Referência da Função add_meta_box







