Creación de Custom Meta Box en Publicaciones

  • Autor Autor NetReyes
  • Fecha de inicio Fecha de inicio
N

NetReyes

Eta
Hola.

Buenas amigos recurro a su sabiduria para que me ayuden con el siguiente codigo, el cual es para crear un array de meta custom box en los post, pero no guarda los valores, algo estaria haciendo mal.

El codigo origal es para un post type, yo lo quiero acoplar para los post.
https://premium.wpmudev.org/blog/creating-meta-boxes/

Lo unico que necesito son los custom meta box.

PHP:
<?php
    // La función no será utilizada antes del 'init'.
    add_action( 'add_meta_boxes_productos', 'productos_add_meta_boxes' );
    
    function productos_add_meta_boxes(){
        add_meta_box( 'productos_meta_box', __( 'Informacion Productos', 'productos_example_plugin' ), 'productos_build_meta_box', 'post', 'normal', 'low' );
    }
    
    function productos_build_meta_box($post){
    // make sure the form request comes from WordPress
    wp_nonce_field( basename( __FILE__ ), 'productos_meta_box_nonce' );
    // retrieve the _productos_carbohydrates current value
    $current_marca = get_post_meta( $post->ID, 'productos_marca', true );
    $current_precio = get_post_meta( $post->ID, 'productos_precio', true );

    ?>
    <div class='e'>
        <?php _e( 'Marca:', 'productos_example_plugin' ); ?>
        <p>
            <input style="width: 100%; frameborder="0" type="text" name="marca" value="<?php echo $current_marca; ?>" /> 
        </p>
        
        <?php _e( 'Precio:', 'productos_example_plugin' ); ?>
        <p>
            <input style="width: 100%; frameborder="0" type="text" name="precio" value="<?php echo $current_precio; ?>" /> 
        </p>
    
    </div>
    <?php
}
/**
 * Store custom field meta box data
 *
 * @param int $post_id The post ID.
 * [MENTION=3037]Link[/MENTION] [url]https://codex.wordpress.org/Plugin_API/Action_Reference/save_post[/url]
 */
function productos_save_meta_box_data( $post_id ){
    // verify meta box nonce
    if ( !isset( $_POST['productos_meta_box_nonce'] ) || !wp_verify_nonce( $_POST['productos_meta_box_nonce'], basename( __FILE__ ) ) ){
        return $post_id;
    }
    
     if ( !wp_verify_nonce( $_POST['pornostara_noncename'], plugin_basename(__FILE__) ) )
        return $post_id;
    
    
    // return if autosave
    if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ){
        return $post_id;
    }
  // Check the user's permissions.
    if ( ! current_user_can( 'edit_post', $post_id ) ){
        return $post_id;
    }
    // store custom fields values
    // carbohydrates string
    if ( isset( $_REQUEST['pornostara'] ) ) {
        update_post_meta( $post_id, 'productos_pornostara', sanitize_text_field( $_POST['pornostara'] ) );
    }
    if ( isset( $_REQUEST['marca'] ) ) {
        update_post_meta( $post_id, 'productos_marca', sanitize_text_field( $_POST['marca'] ) );
    }
    if ( isset( $_REQUEST['precio'] ) ) {
        update_post_meta( $post_id, 'productos_precio', sanitize_text_field( $_POST['precio'] ) );
    }

}
add_action( 'save_post_productos', 'productos_save_meta_box_data' );
?>
 
Atrás
Arriba