Use this code to register a custom post type, remember you need to write it in your functions.php file and wrap it with a function. Then call it by init action hook. Example –
function custom_post(){
$labels = array(
'name' => ( 'post type plural name'),
'singular_name' => ( 'post type singular name' ),
);
$args = array(
'labels' => $labels,
'public' => false,
'show_ui' => true,
'show_in_menu' => true,
'supports' => array( 'menu_order','page-attributes','title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments','custom-fields' ),
);
register_post_type( 'post-type', $args );
}
add_action( 'init', 'custom_post' );
Then you need to display it to your template file, question how? We can display it with a query and piece of code.
global $post;
$args=array(
'post_type' => 'your-post-type',
'post_status' => 'post-status',
'posts_per_page' => 3,
'orderby'=>'menu_order',
'order' => 'DESC',
);
$my_posts = get_posts( $args );
foreach ( $my_posts as $post){
setup_postdata($post);
the_content();// and more that you want to display
}
