Generar primero el Custom Post
Para eso se puede usar la siguiente herramienta Online. Definir un nombre del tipo de post en Post Type Key. Ese valor será utilizado para asignar los custom fields.http://generatewp.com/post-type/
Una vez que esté completo, se debe agregar el código generado en el archivo functions.php (archivo del theme).
Agregar Custom Fields
Instalar y activar el plugin Advanced Custom Fields. Este servirá para armar los "custom fields" que serán adjuntados al "custom post".Agregar Nuevos Campos
Luego de instalar el plugin, aparecerá el Menu "Custom Fields". Crear los nuevos campos que aparecerán en el post.Luego, asignar dónde aparecerán los nuevos campos. En este caso seleccionar Post Type y elegir que sea igual al Post Type Key definida al momento de crear el custom post.
Crear la Vista (Template)
Usar el código del loop post y especificar que muestre los post de tipo creado por ti.
$args = array('post_type' => 'post_cursos', 'posts_per_page' => 10);
$loop = new WP_Query($args);
while ($loop->have_posts()) : $loop->the_post();
the_title();
echo '';
the_content();
echo '';
endwhile;
Mostrar custom fields
the_field( 'field_name' );
o
$field = get_field('field_name');