Or, embed this snippet using GenerateWP WordPress Plugin.

Download

Clone

tutorial

for learning purposes

/*
    Plugin Name: Tutorials (tommy)
    Plugin URI: https://www.enovathemes.com
    Description: Amazing Tutorials
    Author: Enovathemes
    Version: 1.0
    Author URI: http://enovathemes.com
*/
if ( ! defined( 'ABSPATH' ) ) {
    exit; // Exit if accessed directly
}

function envato_tutorial() {
     
    $labels = array(
        'name'               => esc_html__('Tutorials', 'envato'),
        'singular_name'      => esc_html__('Tutorial', 'envato'),
        'add_new'            => esc_html__('Add new', 'envato'),
        'add_new_item'       => esc_html__('Add new tutorial', 'envato'),
        'edit_item'          => esc_html__('Edit tutorial', 'envato'),
        'new_item'           => esc_html__('New tutorial', 'envato'),
        'all_items'          => esc_html__('All tutorials', 'envato'),
        'view_item'          => esc_html__('View tutorial', 'envato'),
        'search_items'       => esc_html__('Search tutorials', 'envato'),
        'not_found'          => esc_html__('No tutorials found', 'envato'),
        'not_found_in_trash' => esc_html__('No tutorials found in trash', 'envato'), 
        'parent_item_colon'  => '',
        'menu_name'          => esc_html__('Tutorials', 'envato')
    );
 
    $args = array(
        'labels'             => $labels,
        'public'             => true,
        'publicly_queryable' => true,
        'show_ui'            => true, 
        'show_in_menu'       => true, 
        'query_var'          => true,
        'rewrite'            => array( 'slug' => 'tutorial','with_front' => false ),
        'capability_type'    => 'post',
        'has_archive'        => true, 
        'hierarchical'       => false,
        'menu_position'      => 20,
        'menu_icon'          => 'dashicons-portfolio',
        'supports'           => array( 'title', 'editor', 'thumbnail', 'excerpt'),
        'show_in_rest'          => true,
        'rest_controller_class' => 'WP_REST_Posts_Controller',
        'rest_base'             => 'tutorial',
    );
 
    register_post_type( 'tutorial', $args );
 
    register_taxonomy('tutorial-category', 'tutorial', array(
        'hierarchical' => true,
        'labels' => array(
            'name'              => esc_html__( 'Category', 'envato' ),
            'singular_name'     => esc_html__( 'Category', 'envato' ),
            'search_items'      => esc_html__( 'Search category', 'envato' ),
            'all_items'         => esc_html__( 'All categories', 'envato' ),
            'parent_item'       => esc_html__( 'Parent category', 'envato' ),
            'parent_item_colon' => esc_html__( 'Parent category', 'envato' ),
            'edit_item'         => esc_html__( 'Edit category', 'envato' ),
            'update_item'       => esc_html__( 'Update category', 'envato' ),
            'add_new_item'      => esc_html__( 'Add new category', 'envato' ),
            'new_item_name'     => esc_html__( 'New category', 'envato' ),
            'menu_name'         => esc_html__( 'Categories', 'envato' ),
        ),
        'rewrite' => array(
            'slug'         => 'tutorial-category',
            'with_front'   => true,
            'hierarchical' => true
        ),
        'show_in_nav_menus' => true,
        'show_tagcloud'     => true,
        'show_admin_column' => true,
        'show_in_rest'          => true,
        'rest_controller_class' => 'WP_REST_Terms_Controller',
        'rest_base'             => 'tutorial_category',
    ));
 
    register_taxonomy('tutorial-tag', 'tutorial', array(
        'hierarchical' => false,
        'labels' => array(
            'name'              => esc_html__( 'Tutorials tags', 'envato' ),
            'singular_name'     => esc_html__( 'Tutorials tag', 'envato' ),
            'search_items'      => esc_html__( 'Search tutorial tags', 'envato' ),
            'all_items'         => esc_html__( 'All tutorial tags', 'envato' ),
            'parent_item'       => esc_html__( 'Parent tutorial tags', 'envato' ),
            'parent_item_colon' => esc_html__( 'Parent tutorial tag:', 'envato' ),
            'edit_item'         => esc_html__( 'Edit tutorial tag', 'envato' ),
            'update_item'       => esc_html__( 'Update tutorial tag', 'envato' ),
            'add_new_item'      => esc_html__( 'Add new tutorial tag', 'envato' ),
            'new_item_name'     => esc_html__( 'New tutorial tag', 'envato' ),
            'menu_name'         => esc_html__( 'Tags', 'envato' ),
        ),
        'rewrite'          => array(
            'slug'         => 'tutorial-tag',
            'with_front'   => true,
            'hierarchical' => false
        ),
        'show_in_rest'          => true,
        'rest_controller_class' => 'WP_REST_Terms_Controller',
        'rest_base'             => 'tutorial_tag',
    ));
}
 
add_action( 'init', 'envato_tutorial' );