Problemas con campos en formulario de registro de estudiantes

  • Autor Autor giulichajari
  • Fecha de inicio Fecha de inicio
giulichajari

giulichajari

Gamma
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
hola amigos.. tengo el siguiente codigo para crear un custom post para un registro de estudiantes.. me aparece el menu estudiantes donde tengo ver todos y nuevo estudiante.. pero en nuevo no me aparecen los campos que quiero..
PHP:
add_action ('init', 'crear_post_type');function crear_post_type()  { 
    $labels = array(
     'name' =>('Estudiantes'),
     'singular_name' =>('Estudiantes'),
     'all_items' =>('Todos los Estudiantes'),
     'add_new' =>('Nuevo Estudiante'),
     'add_new_item' =>('Añadir nuevo Estudiante'),
     'edit_item' =>('Editar Estudiante'),
     'new_item' =>('Nuevo Estudiante'),
     'view_item' =>('Ver Estudiantes'),
     'search_items' =>('Buscar Estudiante'),
     'not_found' =>('No se han encontrado Estudiantes'),
     'not_found_in_trash' =>('No hay Estudiantes elminados'),
     'parent_item_colon' => ''
    );

    $args = array( 
     'labels' => $labels,
     'public' => true,
     'publicly_queryable' => true,
     'show_ui' => true,
     'query_var' => true,
     'rewrite' => true,
     'capability_type' => 'post',
     'hierarchical' => false,
     'menu_position' => 5,
     'supports' => array('title', 'editor', 'author', 'thumbnail'     ,'excerpt','comments')
    );
    register_post_type('Estudiantes', $args); 
  }
  // Acción que llama a la función que añade el metabox para los estudiante
add_action( 'add_meta_boxes', 'add_estudiantes_metaboxes' );
  function add_estudiantes_metaboxes()
{
   // ID metabox, título metabox, función que muestra los atributos, tipo de post, zona metabox, prioridad
   add_meta_box( $id, $title, $callback, $page, $context, $priority, $callback_args );
}



// Función que muestra los atributos del estudiante
function estudiante()
{
   global $post;

   // Noncename necesario para verificar de dónde vienen los datos
   echo '<input type="hidden" name="estudiantemeta_noncename" id="estudiantemeta_noncename" value="' .
   wp_create_nonce( plugin_basename(__FILE__) ) . '" />';

 
   echo '<p>Nombre y Apellido</p>';
   echo '<input type="text" name="_nombre" value="' . $nombre . '" class="widefat" />';
   echo '<p>Fecha de nacimiento</p>';
   echo '<input type="text" name="_fechanac" value="' . $fechanac . '" class="widefat" />';
   echo '<p>Foto</p>';
    echo '<input type="text" name="_fechanac" value="' . $foto . '" class="widefat" />';
}


// Guarda los campos personalizados
function save_estudiante_meta($post_id, $post)
{
   // Comprobación de seguridad para que no se acceda desde otros sitios
   if ( !wp_verify_nonce( $_POST['estudiantemeta_noncename'], plugin_basename(__FILE__) )) {
      return $post->ID;
   }

   // Comprobación de que el usuario actual puede editar
   if ( !current_user_can( 'edit_post', $post->ID ))
      return $post->ID;

   // Obtenemos los atributos guardados en POST cuando guardamos nuestra página de artículo
   $estudiante_meta['_nombre'] = $_POST['_nombre'];
   $estudiante_meta['_fechanac'] = $_POST['_fechanac'];
   

   // Guardamos los valores de los atributos como campos personalizados
   foreach ($estudiante_meta as $key => $value)
   {
      if( $post->post_type == 'revision' ) return; // No guardamos si el post es una revisión
      if(get_post_meta($post->ID, $key, FALSE))
      {
         // Si el atributo ya existía, lo actualizamos
         update_post_meta($post->ID, $key, $value);
      }
      else
      {
         // Si no existía, lo añadimos nuevo
         add_post_meta($post->ID, $key, $value);
      }

      // Si el valor está en blanco, eliminamos el atributo
      if(!$value) delete_post_meta($post->ID, $key);
   }
}

// Llamamos a guardar los atributos cuando guardemos el estudiante
add_action('save_post', 'save_estudiante_meta', 1, 2);

Les agradezco su ayuda
 
Atrás
Arriba