WP - Metaboxe
<?php
/*******************************************/
/* META BOXES */
/*******************************************/
/**
* PRIX
*/
function meta_vins_init()
{
add_meta_box('vins_prix_meta', 'Prix', 'vins_prix_setup', 'vins', 'normal', 'high');
}
add_action('add_meta_boxes','meta_vins_init');
function vins_prix_setup()
{
global $post;
$meta = get_post_meta($post->ID,'_prix',TRUE);
wp_nonce_field( basename( __FILE__ ), 'vins_prix_noncename' );
echo '<label for="myplugin_new_field">';
echo '</label> ';
echo '<input type="text" pattern="\d*" id="vin_prix" name="_prix" value="' . $meta . '" size="25" /> €';
}
function vins_prix_save($post_id)
{
if ( ! wp_verify_nonce($_POST['vins_prix_noncename'],basename( __FILE__ ))) return $post_id;
if ($_POST['post_type'] == 'vins'){
if(!current_user_can('edit_page', $post_id)) return $post_id;
} else {
if(!current_user_can('edit_post', $post_id)) return $post_id;
}
$current_data = get_post_meta($post_id, '_prix', TRUE);
$new_data = $_POST['_prix'];
if( ! is_numeric($new_data) ) $new_data = 0;
update_post_meta($post_id,'_prix',$new_data);
return $post_id;
}
add_action('save_post','vins_prix_save', 10, 2);