COMO?! em 5min? sim em 5min, a coisa mais linda do universo
Bom, pra facilitar a vida, segue codigo abaixo comentado
<?php
add_action(admin_init, admin_init);
//adicionar a function admin_init() que inicializa os custom fields ao admin do wordpress
add_action(save_post, save_fields);
// aqui determinamos uma ação para que quando salvar o post, ou atualizar, ele execute a function save_fields()
function admin_init(){
add_meta_box(featured-meta, Custom fields doidos , meta_options, post, normal, high);
// aqui temos nossa função que cria a caixa de campo customizavel,
// temos o nome dela(featured-meta), temos o titulo que aparecerá na caixa no post(Custom fields doidos),
// em meta_options ele chama as opções da função meta_options() logo abaixo, determinamos que iram aparecer somente em post
// em normal podemos determinar se será normal (aparece abaixo do editor de textos) ou side que aparece ali onde
// ficam categorias e tals simples não?
}
function meta_options(){
// yay agora em meta_options() pegamos todos campos que queremos ou criaremos e colocaremos em suas respectivas variaveis:
global $post, $meta_boxes;
$custom = get_post_custom($post->ID);
$field = $custom["field"][0]; //crie mais $mais uma = $custom["maisuma"][0], sempre com 0 no final ok? porque assim ele pega o valor dentro do array e não faz merda :p
?>
<div><label>Field:</label><br/><input name=modelo value=<?php echo $field; ?> /></div>
// pra mim a parte mais divertida, personalizar essa parte fica a seu criterio, eu sempre personalizo, enfim, html forms se você tá lendo isso você sabe fazer um :p só utilize <?php echo $nomedofield;?> pra pintar os valores aonde quer
<?php
}
function save_fields(){
global $post;
update_post_meta($post->ID, field, $_POST["field"]);
// finalmente a parte pra salvar os fields, bom o codigo se auto-explica, mais vai ae uma explicação simples
// update_post_meta($id, $metaname, $metavalue), onde $id é o ID do post, $metaname é o nome que vamos utilizar lá no nosso post depois pra recuperar esse valor e $metavalue o valor do campo
}
?>
OKAY!!!! depois de mil anos terminamos :p mentira, em 5 minutos se faz isso, a leitura que é demorada
como recuperar iss depois no meu template?
<?php echo get_post_meta($post->ID, field, true);?>
ou você pode colocar o valor em uma variavel e manipular da maneira que quiser use sua imaginação e compartilhe seu conhecimento e experiências aqui nos comentários
Código final sem os cometários:
<?php
add_action(admin_init, admin_init);
add_action(save_post, save_fields);
function admin_init(){
add_meta_box(featured-meta, Custom fields doidos , meta_options, post, normal, high);
}
function meta_options(){
global $post, $meta_boxes;
$custom = get_post_custom($post->ID);
$field = $custom["field"][0];
?>
<div><label>Field:</label><br/><input name=modelo value=<?php echo $field; ?> /></div>
<?php
}
function save_fields(){
global $post;
update_post_meta($post->ID, field, $_POST["field"]);
}
?>